On Thu, 26 Nov 2015 16:00:34 +0300 Dan Carpenter <dan.carpenter@xxxxxxxxxx> wrote: > On Thu, Nov 26, 2015 at 01:32:41PM +0100, Michael Büsch wrote: > > > See also: > > > drivers/net/wireless/broadcom/b43/debugfs.c:346 mmio32write__write_file() warn: impossible condition '(mask > 4294967295) => (0-u32max > u32max)' > > > drivers/net/wireless/broadcom/b43/debugfs.c:346 mmio32write__write_file() warn: impossible condition '(set > 4294967295) => (0-u32max > u32max)' > > > > > > > > Sure. These are intentional. > > The compiler will optimize this out. > > Hm... We try to ignore when people do intentional comparisons with zero > like this: > > if (unsigned_var < 0 || unsigned_var >= 10) > return -EINVAL; > > Because they are obviously harmless and they don't hurt readability. > Also Linus doesn't like removing these. It just checks whether the value will fit into a 32 bit unsigned int variable. It doesn't make assumptions on what sizeof(unsigned int) is, although it would be safe to assume 4 here and omit the check. -- Michael
Attachment:
pgpUFUGbzretZ.pgp
Description: OpenPGP digital signature