scsi: target: iblock: Fix type of logs_per_phys
authorChaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
Sun, 28 Feb 2021 05:56:25 +0000 (21:56 -0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Wed, 10 Mar 2021 04:47:17 +0000 (23:47 -0500)
According to ilog2() it expects 32/64 bit unsigned value.

"  147  * ilog2 - log base 2 of 32-bit or a 64-bit unsigned value"

Replace type of logs_per_phys from int to unsigned int.

Link: https://lore.kernel.org/r/20210228055645.22253-4-chaitanya.kulkarni@wdc.com
Reviewed-by: Mike Christie <michael.christie@oracle.com>
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Signed-off-by: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/target/target_core_iblock.c

index 3851f9e..d6fdd1c 100644 (file)
@@ -853,7 +853,7 @@ static unsigned int iblock_get_lbppbe(struct se_device *dev)
 {
        struct iblock_dev *ib_dev = IBLOCK_DEV(dev);
        struct block_device *bd = ib_dev->ibd_bd;
-       int logs_per_phys =
+       unsigned int logs_per_phys =
                bdev_physical_block_size(bd) / bdev_logical_block_size(bd);
 
        return ilog2(logs_per_phys);