(bug report) b43: impossible conditions in debugfs

Michael Büsch m at bues.ch
Thu Nov 26 05:34:16 PST 2015


On Thu, 26 Nov 2015 16:00:34 +0300
Dan Carpenter <dan.carpenter at oracle.com> 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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/b43-dev/attachments/20151126/51883ec1/attachment.sig>


More information about the b43-dev mailing list