From 5f5bcd80f8c365bca1480dc39141952fa7f88c71 Mon Sep 17 00:00:00 2001 From: Kevin Wolf Date: Fri, 7 Feb 2014 16:00:09 +0100 Subject: block: Don't call ROUND_UP with negative values The behaviour of the ROUND_UP macro with negative numbers isn't obvious. It happens to do the right thing in this please, but better avoid it. Suggested-by: Laszlo Ersek Signed-off-by: Kevin Wolf Reviewed-by: Eric Blake Reviewed-by: Laszlo Ersek --- block.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'block.c') diff --git a/block.c b/block.c index a027823ea4..b0c5025977 100644 --- a/block.c +++ b/block.c @@ -2915,8 +2915,8 @@ static int coroutine_fn bdrv_aligned_preadv(BlockDriverState *bs, } total_sectors = DIV_ROUND_UP(len, BDRV_SECTOR_SIZE); - max_nb_sectors = MAX(0, ROUND_UP(total_sectors - sector_num, - align >> BDRV_SECTOR_BITS)); + max_nb_sectors = ROUND_UP(MAX(0, total_sectors - sector_num), + align >> BDRV_SECTOR_BITS); if (max_nb_sectors > 0) { ret = drv->bdrv_co_readv(bs, sector_num, MIN(nb_sectors, max_nb_sectors), qiov); -- cgit v1.2.1