summaryrefslogtreecommitdiffstats
path: root/drivers/block/nbd.c
diff options
context:
space:
mode:
authorJosef Bacik <jbacik@fb.com>2017-03-24 19:08:28 +0100
committerJens Axboe <axboe@fb.com>2017-03-24 22:42:47 +0100
commitf8586855031a1d6b243f013c3082631346fddfad (patch)
treed4a70943fcc2ed1934d1389c84d4da9ac8c12fbc /drivers/block/nbd.c
parentnbd: set rq->errors to actual error code (diff)
downloadlinux-f8586855031a1d6b243f013c3082631346fddfad.tar.xz
linux-f8586855031a1d6b243f013c3082631346fddfad.zip
nbd: set queue timeout properly
We can't just set the timeout on the tagset, we have to set it on the queue as it would have been setup already at this point. Signed-off-by: Josef Bacik <jbacik@fb.com> Signed-off-by: Jens Axboe <axboe@fb.com>
Diffstat (limited to 'drivers/block/nbd.c')
-rw-r--r--drivers/block/nbd.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c
index dbc22f4bed3d..b0003dab90b9 100644
--- a/drivers/block/nbd.c
+++ b/drivers/block/nbd.c
@@ -844,7 +844,10 @@ static int __nbd_ioctl(struct block_device *bdev, struct nbd_device *nbd,
nbd_size_set(nbd, bdev, nbd->blksize, arg);
return 0;
case NBD_SET_TIMEOUT:
- nbd->tag_set.timeout = arg * HZ;
+ if (arg) {
+ nbd->tag_set.timeout = arg * HZ;
+ blk_queue_rq_timeout(nbd->disk->queue, arg * HZ);
+ }
return 0;
case NBD_SET_FLAGS: