linux-stable/drivers/block
Gioh Kim 1e31016b69 block/rnbd: Remove all likely and unlikely
The IO performance test with fio after removing the likely and
unlikely macros in all if-statement shows no performance drop.
They do not help for the performance of rnbd.

The fio test did random read on 32 rnbd devices and 64 processes.
Test environment:
- AMD Opteron(tm) Processor 6386 SE
- 125G memory
- kernel version: 5.4.86
- gcc version: gcc (Debian 8.3.0-6) 8.3.0
- Infiniband controller: InfiniBand: Mellanox Technologies MT26428
[ConnectX VPI PCIe 2.0 5GT/s - IB QDR / 10GigE] (rev b0)

before
read: IOPS=549k, BW=2146MiB/s
read: IOPS=544k, BW=2125MiB/s
read: IOPS=553k, BW=2158MiB/s
read: IOPS=535k, BW=2089MiB/s
read: IOPS=543k, BW=2122MiB/s
read: IOPS=552k, BW=2154MiB/s
average: IOPS=546k, BW=2132MiB/s

after
read: IOPS=556k, BW=2172MiB/s
read: IOPS=561k, BW=2191MiB/s
read: IOPS=552k, BW=2156MiB/s
read: IOPS=551k, BW=2154MiB/s
read: IOPS=562k, BW=2194MiB/s
-----------
average: IOPS=556k, BW=2173MiB/s

The IOPS and bandwidth got better slightly after removing
likely/unlikely. (IOPS= +1.8% BW= +1.9%) But we cannot make sure
that removing the likely/unlikely help the performance because it
depends on various situations. We only make sure that removing the
likely/unlikely does not drop the performance.

Signed-off-by: Gioh Kim <gi-oh.kim@ionos.com>
Reviewed-by: Md Haris Iqbal <haris.iqbal@ionos.com>
Link: https://lore.kernel.org/r/20210428061359.206794-5-gi-oh.kim@ionos.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2021-05-03 11:00:11 -06:00
..
aoe block: Replace lkml.org links with lore 2021-02-10 20:07:21 -07:00
drbd drbd: Fix fall-through warnings for Clang 2021-04-20 15:23:30 -06:00
mtip32xx block: mtip32xx: mtip32xx: Mark debugging variable 'start' as __maybe_unused 2021-04-06 09:21:53 -06:00
null_blk for-5.13/drivers-2021-04-27 2021-04-28 14:39:37 -07:00
paride paride/pd: remove ->revalidate_disk 2021-03-29 07:02:56 -06:00
rnbd block/rnbd: Remove all likely and unlikely 2021-05-03 11:00:11 -06:00
rsxx rsxx: remove extraneous 'const' qualifier 2021-03-24 06:56:20 -06:00
xen-blkback xen-blkback: fix compatibility bug with single page rings 2021-04-23 09:34:07 +02:00
zram zram: fix broken page writeback 2021-03-13 11:27:31 -08:00
amiflop.c amiflop: use separate gendisks for Amiga vs MS-DOS mode 2020-11-16 08:14:30 -07:00
ataflop.c ataflop: fix off by one in ataflop_probe() 2021-04-21 09:15:27 -06:00
brd.c brd: expose number of allocated pages in debugfs 2021-04-21 10:54:48 -06:00
cryptoloop.c
floppy.c for-5.13/drivers-2021-04-27 2021-04-28 14:39:37 -07:00
Kconfig swim: don't call blk_queue_bounce_limit 2021-04-06 09:29:47 -06:00
loop.c block-5.12-2021-02-27 2021-02-28 11:23:38 -08:00
loop.h loop: scale loop device by introducing per device lock 2021-01-26 13:08:54 -07:00
Makefile drivers/block: remove the umem driver 2021-03-24 06:57:40 -06:00
n64cart.c n64: store dev instance into disk private data 2021-02-21 23:37:52 +01:00
nbd.c nbd: handle device refs for DESTROY_ON_DISCONNECT properly 2021-02-22 13:17:23 -07:00
pktcdvd.c block: move bio_list_copy_data to pktcdvd 2021-04-12 09:19:58 -06:00
ps3disk.c powerpc/ps3: make system bus's remove and shutdown callbacks return void 2020-12-04 01:01:22 +11:00
ps3vram.c block: store a block_device pointer in struct bio 2021-01-24 18:17:20 -07:00
rbd.c rbd: remove the ->set_read_only method 2021-01-24 18:15:57 -07:00
rbd_types.h libceph, rbd: replace zero-length array with flexible-array 2020-06-01 13:22:53 +02:00
sunvdc.c compat_ioctl: block: handle cdrom compat ioctl in non-cdrom drivers 2020-01-03 09:33:15 +01:00
swim.c swim: don't call blk_queue_bounce_limit 2021-04-06 09:29:47 -06:00
swim3.c swim3: support highmem 2021-04-06 09:30:09 -06:00
swim_asm.S
sx8.c block: remove unnecessary argument from blk_execute_rq_nowait 2021-01-24 21:52:39 -07:00
virtio_blk.c virtio: features, fixes 2021-02-25 12:21:08 -08:00
xen-blkfront.c for-5.13/drivers-2021-04-27 2021-04-28 14:39:37 -07:00
z2ram.c z2ram: use separate gendisk for the different modes 2020-11-16 08:14:31 -07:00