From 5e454c67fc594150e6c0da32b388a43d40200759 Mon Sep 17 00:00:00 2001 From: Arnd Bergmann Date: Sat, 5 Mar 2016 00:49:31 +0100 Subject: [PATCH] nbd: use correct div_s64 helper The do_div() macro now checks its arguments for the correct type, and refuses anything other than u64, so we get a warning about nbd_ioctl passing in an loff_t: drivers/block/nbd.c: In function '__nbd_ioctl': drivers/block/nbd.c:757:77: error: comparison of distinct pointer types lacks a cast [-Werror] This changes the nbd code to use div_s64() instead, which takes a signed argument. Signed-off-by: Arnd Bergmann Fixes: 37091fdd831f ("nbd: Create size change events for userspace") Signed-off-by: Jens Axboe --- drivers/block/nbd.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c index f6b51d76e578..08afbc7a2bb8 100644 --- a/drivers/block/nbd.c +++ b/drivers/block/nbd.c @@ -753,8 +753,7 @@ static int __nbd_ioctl(struct block_device *bdev, struct nbd_device *nbd, } case NBD_SET_BLKSIZE: { - loff_t bsize = nbd->bytesize; - do_div(bsize, arg); + loff_t bsize = div_s64(nbd->bytesize, arg); return nbd_size_set(nbd, bdev, arg, bsize); } -- 2.20.1