b43-dev.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* (bug report) b43: impossible conditions in debugfs
@ 2015-11-26 11:59 Dan Carpenter
  2015-11-26 12:32 ` Michael Büsch
  0 siblings, 1 reply; 4+ messages in thread
From: Dan Carpenter @ 2015-11-26 11:59 UTC (permalink / raw)
  To: mb; +Cc: linux-wireless, b43-dev

Hello Michael Buesch,

The patch 6bbc321a96d4: "b43: Add debugfs files for random SHM
access" from Jun 19, 2008, leads to the following static checker
warning:

	drivers/net/wireless/broadcom/b43/debugfs.c:217 shm32write__write_file()
	warn: impossible condition '(mask > 4294967295) => (0-u32max > u32max)'

drivers/net/wireless/broadcom/b43/debugfs.c
   198  static int shm32write__write_file(struct b43_wldev *dev,
   199                                    const char *buf, size_t count)
   200  {
   201          unsigned int routing, addr, mask, set;
   202          u32 val;
   203          int res;
   204  
   205          res = sscanf(buf, "0x%X 0x%X 0x%X 0x%X",
   206                       &routing, &addr, &mask, &set);
   207          if (res != 4)
   208                  return -EINVAL;
   209          if (routing > B43_MAX_SHM_ROUTING)
   210                  return -EADDRNOTAVAIL;
   211          if (addr > B43_MAX_SHM_ADDR)
   212                  return -EADDRNOTAVAIL;
   213          if (routing == B43_SHM_SHARED) {
   214                  if ((addr % 2) != 0)
   215                          return -EADDRNOTAVAIL;
   216          }
   217          if ((mask > 0xFFFFFFFF) || (set > 0xFFFFFFFF))

Both of these conditions are impossible.

   218                  return -E2BIG;
   219  
   220          if (mask == 0)
   221                  val = 0;
   222          else
   223                  val = b43_shm_read32(dev, routing, addr);
   224          val &= mask;
   225          val |= set;
   226          b43_shm_write32(dev, routing, addr, val);
   227  
   228          return 0;
   229  }

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)'


regards,
dan carpenter

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2015-11-26 13:34 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-11-26 11:59 (bug report) b43: impossible conditions in debugfs Dan Carpenter
2015-11-26 12:32 ` Michael Büsch
2015-11-26 13:00   ` Dan Carpenter
2015-11-26 13:34     ` Michael Büsch

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).