All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: kbuild@lists.01.org
Subject: drivers/net/wireless/intel/iwlegacy/common.c:1434:39: warning: Value stored to 'scan_notif' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
Date: Mon, 03 Jan 2022 10:47:02 +0800	[thread overview]
Message-ID: <202201031008.of9ldCoK-lkp@intel.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 28773 bytes --]

CC: llvm(a)lists.linux.dev
CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Arnd Bergmann <arnd@arndb.de>
CC: Kalle Valo <kvalo@codeaurora.org>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   c9e6606c7fe92b50a02ce51dda82586ebdf99b48
commit: fa9f5d0e0b45a06802f7cb3afed237be6066821e iwlegacy: avoid -Wempty-body warning
date:   9 months ago
:::::: branch date: 4 hours ago
:::::: commit date: 9 months ago
config: i386-randconfig-c001-20211215 (https://download.01.org/0day-ci/archive/20220103/202201031008.of9ldCoK-lkp(a)intel.com/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project dd245bab9fbb364faa1581e4f92ba3119a872fba)
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=fa9f5d0e0b45a06802f7cb3afed237be6066821e
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout fa9f5d0e0b45a06802f7cb3afed237be6066821e
        # save the config file to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=i386 clang-analyzer 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>


clang-analyzer warnings: (new ones prefixed by >>)
           ^     ~~~~~~~~~~~~~~~~
   Suppressed 15 warnings (15 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   15 warnings generated.
   Suppressed 15 warnings (15 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   15 warnings generated.
   Suppressed 15 warnings (15 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   15 warnings generated.
   Suppressed 15 warnings (15 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   17 warnings generated.
   Suppressed 17 warnings (15 in non-user code, 2 with check filters).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   15 warnings generated.
   Suppressed 15 warnings (15 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   15 warnings generated.
   Suppressed 15 warnings (15 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   8 warnings generated.
   16 warnings generated.
   drivers/video/fbdev/aty/atyfb_base.c:167:10: warning: 1st function call argument is an uninitialized value [clang-analyzer-core.CallAndMessage]
                   return aty_ld_le32(lt_lcd_regs[index], par);
                          ^
   drivers/video/fbdev/aty/atyfb_base.c:2220:32: note: Passing the value 20 via 1st parameter 'index'
           unsigned int reg = aty_ld_lcd(LCD_MISC_CNTL, par);
                                         ^
   include/video/mach64.h:1273:24: note: expanded from macro 'LCD_MISC_CNTL'
   #define LCD_MISC_CNTL           0x14
                                   ^~~~
   drivers/video/fbdev/aty/atyfb_base.c:2220:21: note: Calling 'aty_ld_lcd'
           unsigned int reg = aty_ld_lcd(LCD_MISC_CNTL, par);
                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/video/fbdev/aty/atyfb_base.c:166:6: note: Assuming the condition is true
           if (M64_HAS(LT_LCD_REGS)) {
               ^
   drivers/video/fbdev/aty/atyfb.h:197:27: note: expanded from macro 'M64_HAS'
   #define M64_HAS(feature)        ((par)->features & (M64F_##feature))
                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/video/fbdev/aty/atyfb_base.c:166:2: note: Taking true branch
           if (M64_HAS(LT_LCD_REGS)) {
           ^
   drivers/video/fbdev/aty/atyfb_base.c:167:10: note: 1st function call argument is an uninitialized value
                   return aty_ld_le32(lt_lcd_regs[index], par);
                          ^           ~~~~~~~~~~~~~~~~~~
   Suppressed 14 warnings (14 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   7 warnings generated.
   14 warnings generated.
   Suppressed 14 warnings (14 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   7 warnings generated.
   14 warnings generated.
   Suppressed 14 warnings (14 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   6 warnings generated.
   drivers/mtd/nand/raw/nand_bbt.c:550:3: warning: Value stored to 'bbtblocks' is never read [clang-analyzer-deadcode.DeadStores]
                   bbtblocks = mtd->size >> this->bbt_erase_shift;
                   ^           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/mtd/nand/raw/nand_bbt.c:550:3: note: Value stored to 'bbtblocks' is never read
                   bbtblocks = mtd->size >> this->bbt_erase_shift;
                   ^           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   Suppressed 5 warnings (5 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   5 warnings generated.
   Suppressed 5 warnings (5 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   5 warnings generated.
   Suppressed 5 warnings (5 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   5 warnings generated.
   Suppressed 5 warnings (5 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   5 warnings generated.
   Suppressed 5 warnings (5 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   5 warnings generated.
   Suppressed 5 warnings (5 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   6 warnings generated.
   Suppressed 6 warnings (6 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   6 warnings generated.
   Suppressed 6 warnings (6 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   6 warnings generated.
   Suppressed 6 warnings (6 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   6 warnings generated.
   Suppressed 6 warnings (6 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   6 warnings generated.
   Suppressed 6 warnings (6 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   15 warnings generated.
   Suppressed 15 warnings (15 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   18 warnings generated.
>> drivers/net/wireless/intel/iwlegacy/common.c:1434:39: warning: Value stored to 'scan_notif' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
           struct il_scancomplete_notification *scan_notif = (void *)pkt->u.raw;
                                                ^~~~~~~~~~   ~~~~~~~~~~~~~~~~~~
   drivers/net/wireless/intel/iwlegacy/common.c:1434:39: note: Value stored to 'scan_notif' during its initialization is never read
           struct il_scancomplete_notification *scan_notif = (void *)pkt->u.raw;
                                                ^~~~~~~~~~   ~~~~~~~~~~~~~~~~~~
   drivers/net/wireless/intel/iwlegacy/common.c:5491:2: warning: Value stored to 'inta_mask' is never read [clang-analyzer-deadcode.DeadStores]
           inta_mask = _il_rd(il, CSR_INT_MASK);   /* just for debug */
           ^           ~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/wireless/intel/iwlegacy/common.c:5491:2: note: Value stored to 'inta_mask' is never read
           inta_mask = _il_rd(il, CSR_INT_MASK);   /* just for debug */
           ^           ~~~~~~~~~~~~~~~~~~~~~~~~
   Suppressed 16 warnings (16 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   16 warnings generated.
   Suppressed 16 warnings (16 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   21 warnings generated.
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:254:3: warning: Use of memory after it is freed [clang-analyzer-unix.Malloc]
                   list_del(element);
                   ^
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:2826:2: note: Taking false branch
           D_MAC80211("enter\n");
           ^
   drivers/net/wireless/intel/iwlegacy/common.h:3025:29: note: expanded from macro 'D_MAC80211'
   #define D_MAC80211(f, a...)     IL_DBG(IL_DL_MAC80211, f, ## a)
                                   ^
   drivers/net/wireless/intel/iwlegacy/common.h:2940:37: note: expanded from macro 'IL_DBG'
   #define IL_DBG(level, fmt, args...) no_printk(fmt, ##args)
                                       ^
   include/linux/printk.h:139:2: note: expanded from macro 'no_printk'
           if (0)                                          \
           ^
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:2828:6: note: Assuming field 'is_open' is not equal to 0
           if (!il->is_open) {
               ^~~~~~~~~~~~
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:2828:2: note: Taking false branch
           if (!il->is_open) {
           ^
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:2835:2: note: Calling 'il3945_down'
           il3945_down(il);
           ^~~~~~~~~~~~~~~
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:2312:2: note: Calling '__il3945_down'
           __il3945_down(il);
           ^~~~~~~~~~~~~~~~~
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:2227:2: note: Taking false branch
           D_INFO(DRV_NAME " is going down\n");
           ^
   drivers/net/wireless/intel/iwlegacy/common.h:3024:26: note: expanded from macro 'D_INFO'
   #define D_INFO(f, a...)         IL_DBG(IL_DL_INFO, f, ## a)
                                   ^
   drivers/net/wireless/intel/iwlegacy/common.h:2940:37: note: expanded from macro 'IL_DBG'
   #define IL_DBG(level, fmt, args...) no_printk(fmt, ##args)
                                       ^
   include/linux/printk.h:139:2: note: expanded from macro 'no_printk'
           if (0)                                          \
           ^
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:2247:6: note: Assuming 'exit_pending' is not equal to 0
           if (!exit_pending)
               ^~~~~~~~~~~~~
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:2247:2: note: Taking false branch
           if (!exit_pending)
           ^
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:2254:2: note: Loop condition is false.  Exiting loop
           spin_lock_irqsave(&il->lock, flags);
           ^
   include/linux/spinlock.h:384:2: note: expanded from macro 'spin_lock_irqsave'
           raw_spin_lock_irqsave(spinlock_check(lock), flags);     \
           ^
   include/linux/spinlock.h:250:2: note: expanded from macro 'raw_spin_lock_irqsave'
           do {                                            \
           ^
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:2254:2: note: Loop condition is false.  Exiting loop
           spin_lock_irqsave(&il->lock, flags);
           ^
   include/linux/spinlock.h:382:43: note: expanded from macro 'spin_lock_irqsave'
   #define spin_lock_irqsave(lock, flags)                          \
                                                                   ^
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:2259:6: note: Assuming field 'mac80211_registered' is 0
           if (il->mac80211_registered)
               ^~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:2259:2: note: Taking false branch
           if (il->mac80211_registered)
           ^
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:2264:6: note: Assuming the condition is true
           if (!il_is_init(il)) {
               ^~~~~~~~~~~~~~~
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:2264:2: note: Taking true branch
           if (!il_is_init(il)) {
           ^
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:2269:3: note: Control jumps to line 2300
                   goto exit;
                   ^
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:2305:2: note: Calling 'il3945_clear_free_frames'
           il3945_clear_free_frames(il);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:250:2: note: Taking false branch
           D_INFO("%d frames on pre-allocated heap on clear.\n", il->frames_count);
           ^
   drivers/net/wireless/intel/iwlegacy/common.h:3024:26: note: expanded from macro 'D_INFO'
   #define D_INFO(f, a...)         IL_DBG(IL_DL_INFO, f, ## a)
                                   ^
   drivers/net/wireless/intel/iwlegacy/common.h:2940:37: note: expanded from macro 'IL_DBG'
   #define IL_DBG(level, fmt, args...) no_printk(fmt, ##args)
                                       ^
   include/linux/printk.h:139:2: note: expanded from macro 'no_printk'
           if (0)                                          \
           ^
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:252:2: note: Loop condition is true.  Entering loop body
           while (!list_empty(&il->free_frames)) {
           ^
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:255:9: note: Left side of '&&' is false
                   kfree(list_entry(element, struct il3945_frame, list));
                         ^
   include/linux/list.h:511:2: note: expanded from macro 'list_entry'
           container_of(ptr, type, member)
           ^
   include/linux/kernel.h:709:61: note: expanded from macro 'container_of'
           BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) &&   \
                                                                      ^
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:255:9: note: Taking false branch
                   kfree(list_entry(element, struct il3945_frame, list));
                         ^
   include/linux/list.h:511:2: note: expanded from macro 'list_entry'
           container_of(ptr, type, member)
           ^
   include/linux/kernel.h:709:2: note: expanded from macro 'container_of'
           BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) &&   \
           ^
   include/linux/build_bug.h:39:37: note: expanded from macro 'BUILD_BUG_ON_MSG'
   #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
                                       ^
   include/linux/compiler_types.h:320:2: note: expanded from macro 'compiletime_assert'
           _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
           ^
   include/linux/compiler_types.h:308:2: note: expanded from macro '_compiletime_assert'
           __compiletime_assert(condition, msg, prefix, suffix)
           ^
   include/linux/compiler_types.h:300:3: note: expanded from macro '__compiletime_assert'
                   if (!(condition))                                       \
                   ^
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:255:9: note: Loop condition is false.  Exiting loop
                   kfree(list_entry(element, struct il3945_frame, list));
                         ^
   include/linux/list.h:511:2: note: expanded from macro 'list_entry'
           container_of(ptr, type, member)
           ^
   include/linux/kernel.h:709:2: note: expanded from macro 'container_of'
           BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) &&   \
           ^
   include/linux/build_bug.h:39:37: note: expanded from macro 'BUILD_BUG_ON_MSG'
   #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
                                       ^
   include/linux/compiler_types.h:320:2: note: expanded from macro 'compiletime_assert'
           _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
           ^
   include/linux/compiler_types.h:308:2: note: expanded from macro '_compiletime_assert'
           __compiletime_assert(condition, msg, prefix, suffix)
           ^
   include/linux/compiler_types.h:298:2: note: expanded from macro '__compiletime_assert'
           do {                                                            \
           ^
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:255:3: note: Memory is released
                   kfree(list_entry(element, struct il3945_frame, list));
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:252:2: note: Loop condition is true.  Entering loop body
           while (!list_empty(&il->free_frames)) {
           ^
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:254:3: note: Use of memory after it is freed
                   list_del(element);
                   ^        ~~~~~~~
>> drivers/net/wireless/intel/iwlegacy/3945-mac.c:754:20: warning: Value stored to 'pkt' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
           struct il_rx_pkt *pkt = rxb_addr(rxb);
                             ^~~
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:754:20: note: Value stored to 'pkt' during its initialization is never read
           struct il_rx_pkt *pkt = rxb_addr(rxb);
                             ^~~
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:1222:3: warning: Value stored to 'len' is never read [clang-analyzer-deadcode.DeadStores]
                   len += sizeof(u32);     /* account for status word */
                   ^      ~~~~~~~~~~~
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:1222:3: note: Value stored to 'len' is never read
                   len += sizeof(u32);     /* account for status word */
                   ^      ~~~~~~~~~~~
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:1429:3: warning: Value stored to 'handled' is never read [clang-analyzer-deadcode.DeadStores]
                   handled |= CSR_INT_BIT_HW_ERR;
                   ^
   drivers/net/wireless/intel/iwlegacy/3945-mac.c:1429:3: note: Value stored to 'handled' is never read
   Suppressed 17 warnings (16 in non-user code, 1 with check filters).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   15 warnings generated.
   Suppressed 15 warnings (15 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   21 warnings generated.
   drivers/net/wireless/broadcom/b43legacy/main.c:746:3: warning: Value stored to 'dummy' is never read [clang-analyzer-deadcode.DeadStores]
                   dummy = b43legacy_read32(dev, B43legacy_MMIO_XMITSTAT_1);
                   ^       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/wireless/broadcom/b43legacy/main.c:746:3: note: Value stored to 'dummy' is never read
                   dummy = b43legacy_read32(dev, B43legacy_MMIO_XMITSTAT_1);
                   ^       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/wireless/broadcom/b43legacy/main.c:807:35: warning: The left operand of '==' is a garbage value [clang-analyzer-core.UndefinedBinaryOperatorResult]
           if (noise[0] == 0x7F || noise[1] == 0x7F ||
                                   ~~~~~~~~ ^
   drivers/net/wireless/broadcom/b43legacy/main.c:803:20: note: Assuming field 'calculation_running' is true
           B43legacy_WARN_ON(!dev->noisecalc.calculation_running);
                             ^
   drivers/net/wireless/broadcom/b43legacy/b43legacy.h:348:69: note: expanded from macro 'B43legacy_WARN_ON'
   # define B43legacy_WARN_ON(x)   __b43legacy_warn_on_dummy(unlikely(!!(x)))
                                                                         ^
   include/linux/compiler.h:78:42: note: expanded from macro 'unlikely'
   # define unlikely(x)    __builtin_expect(!!(x), 0)
                                               ^
   drivers/net/wireless/broadcom/b43legacy/main.c:804:6: note: Assuming field 'channel_at_start' is equal to field 'channel'
           if (dev->noisecalc.channel_at_start != phy->channel)
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/wireless/broadcom/b43legacy/main.c:804:2: note: Taking false branch
           if (dev->noisecalc.channel_at_start != phy->channel)
           ^
   drivers/net/wireless/broadcom/b43legacy/main.c:807:6: note: Assuming the condition is false
           if (noise[0] == 0x7F || noise[1] == 0x7F ||
               ^~~~~~~~~~~~~~~~
   drivers/net/wireless/broadcom/b43legacy/main.c:807:6: note: Left side of '||' is false
   drivers/net/wireless/broadcom/b43legacy/main.c:807:35: note: The left operand of '==' is a garbage value
           if (noise[0] == 0x7F || noise[1] == 0x7F ||
                                   ~~~~~~~~ ^
   drivers/net/wireless/broadcom/b43legacy/main.c:1423:13: warning: Access to field 'wl' results in a dereference of a null pointer (loaded from variable 'dev') [clang-analyzer-core.NullDereference]
           spin_lock(&dev->wl->irq_lock);
                      ^~~
   drivers/net/wireless/broadcom/b43legacy/main.c:1418:2: note: 'dev' initialized here
           struct b43legacy_wldev *dev = dev_id;
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/wireless/broadcom/b43legacy/main.c:1421:20: note: Assuming 'dev' is null
           B43legacy_WARN_ON(!dev);
                             ^
   drivers/net/wireless/broadcom/b43legacy/b43legacy.h:348:69: note: expanded from macro 'B43legacy_WARN_ON'
   # define B43legacy_WARN_ON(x)   __b43legacy_warn_on_dummy(unlikely(!!(x)))
                                                                         ^
   include/linux/compiler.h:78:42: note: expanded from macro 'unlikely'
   # define unlikely(x)    __builtin_expect(!!(x), 0)
                                               ^
   drivers/net/wireless/broadcom/b43legacy/main.c:1423:13: note: Access to field 'wl' results in a dereference of a null pointer (loaded from variable 'dev')
           spin_lock(&dev->wl->irq_lock);
                      ^~~
   drivers/net/wireless/broadcom/b43legacy/main.c:1643:2: warning: Value stored to 'err' is never read [clang-analyzer-deadcode.DeadStores]
           err = -ENODEV;
           ^     ~~~~~~~
   drivers/net/wireless/broadcom/b43legacy/main.c:1643:2: note: Value stored to 'err' is never read
           err = -ENODEV;
           ^     ~~~~~~~
   drivers/net/wireless/broadcom/b43legacy/main.c:3777:28: warning: Access to field 'hw' results in a dereference of a null pointer (loaded from variable 'wl') [clang-analyzer-core.NullDereference]
           struct ieee80211_hw *hw = wl->hw;
                                     ^
   drivers/net/wireless/broadcom/b43legacy/main.c:3850:7: note: Calling 'ssb_get_devtypedata'
           wl = ssb_get_devtypedata(dev);
                ^~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/ssb/ssb.h:312:2: note: Returning without writing to 'dev->devtypedata', which participates in a condition later
           return dev->devtypedata;
           ^
   include/linux/ssb/ssb.h:312:2: note: Returning without writing to 'dev->devtypedata'
   include/linux/ssb/ssb.h:312:2: note: Returning pointer, which participates in a condition later
           return dev->devtypedata;
           ^~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/wireless/broadcom/b43legacy/main.c:3850:7: note: Returning from 'ssb_get_devtypedata'
           wl = ssb_get_devtypedata(dev);
                ^~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/wireless/broadcom/b43legacy/main.c:3851:6: note: Assuming 'wl' is null
           if (!wl) {
               ^~~
   drivers/net/wireless/broadcom/b43legacy/main.c:3851:2: note: Taking true branch
           if (!wl) {
           ^
   drivers/net/wireless/broadcom/b43legacy/main.c:3854:9: note: Value assigned to field 'devtypedata'
                   err = b43legacy_wireless_init(dev);

vim +/scan_notif +1434 drivers/net/wireless/intel/iwlegacy/common.c

0cdc21363cc279 drivers/net/wireless/iwlegacy/common.c       Stanislaw Gruszka 2011-11-15  1432  
0cdc21363cc279 drivers/net/wireless/iwlegacy/common.c       Stanislaw Gruszka 2011-11-15  1433  	struct il_rx_pkt *pkt = rxb_addr(rxb);
0cdc21363cc279 drivers/net/wireless/iwlegacy/common.c       Stanislaw Gruszka 2011-11-15 @1434  	struct il_scancomplete_notification *scan_notif = (void *)pkt->u.raw;
0cdc21363cc279 drivers/net/wireless/iwlegacy/common.c       Stanislaw Gruszka 2011-11-15  1435  
e7392364fcd100 drivers/net/wireless/iwlegacy/common.c       Stanislaw Gruszka 2011-11-15  1436  	D_SCAN("Scan complete: %d channels (TSF 0x%08X:%08X) - %d\n",
e7392364fcd100 drivers/net/wireless/iwlegacy/common.c       Stanislaw Gruszka 2011-11-15  1437  	       scan_notif->scanned_channels, scan_notif->tsf_low,
0cdc21363cc279 drivers/net/wireless/iwlegacy/common.c       Stanislaw Gruszka 2011-11-15  1438  	       scan_notif->tsf_high, scan_notif->status);
0cdc21363cc279 drivers/net/wireless/iwlegacy/common.c       Stanislaw Gruszka 2011-11-15  1439  
0cdc21363cc279 drivers/net/wireless/iwlegacy/common.c       Stanislaw Gruszka 2011-11-15  1440  	/* The HW is no longer scanning */
0cdc21363cc279 drivers/net/wireless/iwlegacy/common.c       Stanislaw Gruszka 2011-11-15  1441  	clear_bit(S_SCAN_HW, &il->status);
0cdc21363cc279 drivers/net/wireless/iwlegacy/common.c       Stanislaw Gruszka 2011-11-15  1442  
0cdc21363cc279 drivers/net/wireless/iwlegacy/common.c       Stanislaw Gruszka 2011-11-15  1443  	D_SCAN("Scan on %sGHz took %dms\n",
57fbcce37be7c1 drivers/net/wireless/intel/iwlegacy/common.c Johannes Berg     2016-04-12  1444  	       (il->scan_band == NL80211_BAND_2GHZ) ? "2.4" : "5.2",
0cdc21363cc279 drivers/net/wireless/iwlegacy/common.c       Stanislaw Gruszka 2011-11-15  1445  	       jiffies_to_msecs(jiffies - il->scan_start));
0cdc21363cc279 drivers/net/wireless/iwlegacy/common.c       Stanislaw Gruszka 2011-11-15  1446  
0cdc21363cc279 drivers/net/wireless/iwlegacy/common.c       Stanislaw Gruszka 2011-11-15  1447  	queue_work(il->workqueue, &il->scan_completed);
0cdc21363cc279 drivers/net/wireless/iwlegacy/common.c       Stanislaw Gruszka 2011-11-15  1448  }
0cdc21363cc279 drivers/net/wireless/iwlegacy/common.c       Stanislaw Gruszka 2011-11-15  1449  

:::::: The code at line 1434 was first introduced by commit
:::::: 0cdc21363cc27989fe9aa1cde614ef4c0429d62f iwlegacy: merge common .c files

:::::: TO: Stanislaw Gruszka <sgruszka@redhat.com>
:::::: CC: Stanislaw Gruszka <sgruszka@redhat.com>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

             reply	other threads:[~2022-01-03  2:47 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-03  2:47 kernel test robot [this message]
  -- strict thread matches above, loose matches on Subject: below --
2021-12-17  4:14 drivers/net/wireless/intel/iwlegacy/common.c:1434:39: warning: Value stored to 'scan_notif' during its initialization is never read [clang-analyzer-deadcode.DeadStores] kernel test robot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202201031008.of9ldCoK-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=kbuild@lists.01.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.