summaryrefslogtreecommitdiffstats
path: root/drivers/block/nbd.c
diff options
context:
space:
mode:
authorMichal Belczyk <belczyk@bsd.krakow.pl>2013-04-30 15:28:28 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2013-04-30 17:04:07 -0700
commit078be02b80359a541928c899c2631f39628f56df (patch)
treeb89690216b6c55b91d9d14775592b660c69010cf /drivers/block/nbd.c
parent5cc5445164c16d32bab2912fac28356ab07aa8b4 (diff)
downloadlinux-stable-078be02b80359a541928c899c2631f39628f56df.tar.gz
linux-stable-078be02b80359a541928c899c2631f39628f56df.tar.bz2
linux-stable-078be02b80359a541928c899c2631f39628f56df.zip
nbd: increase default and max request sizes
Raise the default max request size for nbd to 128KB (from 127KB) to get it 4KB aligned. This patch also allows the max request size to be increased (via /sys/block/nbd<x>/queue/max_sectors_kb) to 32MB. The patch makes nbd network traffic more efficient by: - reducing request fragmentation (4KB alignment) - reducing the number of requests (fewer round trips, less network overhead) Especially in high latency networks, larger request size can make a dramatic Signed-off-by: Paul Clements <paul.clements@steeleye.com> Signed-off-by: Michal Belczyk <belczyk@bsd.krakow.pl> Cc: Jens Axboe <axboe@kernel.dk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/block/nbd.c')
-rw-r--r--drivers/block/nbd.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c
index 7fecc784be01..037288e7874d 100644
--- a/drivers/block/nbd.c
+++ b/drivers/block/nbd.c
@@ -856,6 +856,8 @@ static int __init nbd_init(void)
disk->queue->limits.discard_granularity = 512;
disk->queue->limits.max_discard_sectors = UINT_MAX;
disk->queue->limits.discard_zeroes_data = 0;
+ blk_queue_max_hw_sectors(disk->queue, 65536);
+ disk->queue->limits.max_sectors = 256;
}
if (register_blkdev(NBD_MAJOR, "nbd")) {