| From foo@baz Thu Dec 21 09:02:40 CET 2017 |
| From: Josef Bacik <jbacik@fb.com> |
| Date: Fri, 24 Mar 2017 14:08:28 -0400 |
| Subject: nbd: set queue timeout properly |
| |
| From: Josef Bacik <jbacik@fb.com> |
| |
| |
| [ Upstream commit f8586855031a1d6b243f013c3082631346fddfad ] |
| |
| 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> |
| Signed-off-by: Sasha Levin <alexander.levin@verizon.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| drivers/block/nbd.c | 5 ++++- |
| 1 file changed, 4 insertions(+), 1 deletion(-) |
| |
| --- a/drivers/block/nbd.c |
| +++ b/drivers/block/nbd.c |
| @@ -654,7 +654,10 @@ static int __nbd_ioctl(struct block_devi |
| return nbd_size_set(nbd, bdev, nbd->blksize, arg); |
| |
| 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: |