On Wed, May 1, 2019 at 8:58 AM Colin King <colin.king@xxxxxxxxxxxxx> wrote: > > From: Colin Ian King <colin.king@xxxxxxxxxxxxx> > > Variable block is an unsigned long long hence the less than zero > comparison is always false, hence it is redundant and can be removed. > > Addresses-Coverity: ("Unsigned compared against 0") > Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx> > --- > drivers/md/dm-dust.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/md/dm-dust.c b/drivers/md/dm-dust.c > index 178587bdc626..e739092bfc65 100644 > --- a/drivers/md/dm-dust.c > +++ b/drivers/md/dm-dust.c > @@ -411,7 +411,7 @@ static int dust_message(struct dm_target *ti, unsigned int argc, char **argv, > > block = tmp; > sector_div(size, dd->sect_per_block); > - if (block > size || block < 0) { > + if (block > size) { > DMERR("selected block value out of range"); > return result; > } > -- > 2.20.1 > Thanks. There was already a check before that to ensure that the argument feeding this variable is an unsigned long long; if it isn't, it will fail with EINVAL: # dmsetup message -- dust1 0 queryblock -1 device-mapper: message ioctl on dust1 failed: Invalid argument Command failed Reviewed-by: Bryan Gurney <bgurney@xxxxxxxxxx>