CC: [email protected]
CC: [email protected]
CC: [email protected]
TO: Dave Ertman <[email protected]>
CC: Tony Nguyen <[email protected]>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
master
head:   58e1100fdc5990b0cc0d4beaf2562a92e621ac7d
commit: df006dd4b1dca8c486f73ae76fb77c06afae83f2 ice: Add initial support 
framework for LAG
date:   10 months ago
:::::: branch date: 13 hours ago
:::::: commit date: 10 months ago
config: arm-randconfig-c002-20211126 
(https://download.01.org/0day-ci/archive/20211201/[email protected]/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 
5162b558d8c0b542e752b037e72a69d5fd51eb1e)
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
        # install arm cross compiling tool for clang build
        # apt-get install binutils-arm-linux-gnueabi
        # 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=df006dd4b1dca8c486f73ae76fb77c06afae83f2
        git remote add linus 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout df006dd4b1dca8c486f73ae76fb77c06afae83f2
        # save the config file to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm 
clang-analyzer 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <[email protected]>


clang-analyzer warnings: (new ones prefixed by >>)
                           ^
   include/linux/byteorder/generic.h:95:21: note: expanded from macro 
'be32_to_cpu'
   #define be32_to_cpu __be32_to_cpu
                       ^
   include/uapi/linux/byteorder/little_endian.h:40:26: note: expanded from 
macro '__be32_to_cpu'
   #define __be32_to_cpu(x) __swab32((__force __u32)(__be32)(x))
                            ^
   include/uapi/linux/swab.h:118:3: note: expanded from macro '__swab32'
           (__builtin_constant_p((__u32)(x)) ?     \
            ^
   drivers/net/ethernet/chelsio/cxgb4/t4_hw.c:9673:11: note: '?' condition is 
false
                   acaps = be32_to_cpu(cmd.u.info32.acaps32);
                           ^
   include/linux/byteorder/generic.h:95:21: note: expanded from macro 
'be32_to_cpu'
   #define be32_to_cpu __be32_to_cpu
                       ^
   include/uapi/linux/byteorder/little_endian.h:40:26: note: expanded from 
macro '__be32_to_cpu'
   #define __be32_to_cpu(x) __swab32((__force __u32)(__be32)(x))
                            ^
   include/uapi/linux/swab.h:118:3: note: expanded from macro '__swab32'
           (__builtin_constant_p((__u32)(x)) ?     \
            ^
   drivers/net/ethernet/chelsio/cxgb4/t4_hw.c:9676:8: note: Calling 
't4_alloc_vi'
           ret = t4_alloc_vi(pi->adapter, mbox, port, pf, vf, 1, mac, &rss_size,
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/chelsio/cxgb4/t4_hw.c:7638:16: note: '?' condition is 
false
           c.op_to_vfn = cpu_to_be32(FW_CMD_OP_V(FW_VI_CMD) | FW_CMD_REQUEST_F |
                         ^
   include/linux/byteorder/generic.h:94:21: note: expanded from macro 
'cpu_to_be32'
   #define cpu_to_be32 __cpu_to_be32
                       ^
   include/uapi/linux/byteorder/little_endian.h:39:43: note: expanded from 
macro '__cpu_to_be32'
   #define __cpu_to_be32(x) ((__force __be32)__swab32((x)))
                                             ^
   include/uapi/linux/swab.h:118:3: note: expanded from macro '__swab32'
           (__builtin_constant_p((__u32)(x)) ?     \
            ^
   drivers/net/ethernet/chelsio/cxgb4/t4_hw.c:7641:21: note: '?' condition is 
true
           c.alloc_to_len16 = cpu_to_be32(FW_VI_CMD_ALLOC_F | FW_LEN16(c));
                              ^
   include/linux/byteorder/generic.h:94:21: note: expanded from macro 
'cpu_to_be32'
   #define cpu_to_be32 __cpu_to_be32
                       ^
   include/uapi/linux/byteorder/little_endian.h:39:43: note: expanded from 
macro '__cpu_to_be32'
   #define __cpu_to_be32(x) ((__force __be32)__swab32((x)))
                                             ^
   include/uapi/linux/swab.h:118:3: note: expanded from macro '__swab32'
           (__builtin_constant_p((__u32)(x)) ?     \
            ^
   drivers/net/ethernet/chelsio/cxgb4/t4_hw.c:7646:6: note: Assuming 'ret' is 
not equal to 0
           if (ret)
               ^~~
   drivers/net/ethernet/chelsio/cxgb4/t4_hw.c:7646:2: note: Taking true branch
           if (ret)
           ^
   drivers/net/ethernet/chelsio/cxgb4/t4_hw.c:7647:3: note: Returning without 
writing to '*rss_size'
                   return ret;
                   ^
   drivers/net/ethernet/chelsio/cxgb4/t4_hw.c:9676:8: note: Returning from 
't4_alloc_vi'
           ret = t4_alloc_vi(pi->adapter, mbox, port, pf, vf, 1, mac, &rss_size,
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/chelsio/cxgb4/t4_hw.c:9678:6: note: Assuming 'ret' is 
>= 0
           if (ret < 0)
               ^~~~~~~
   drivers/net/ethernet/chelsio/cxgb4/t4_hw.c:9678:2: note: Taking false branch
           if (ret < 0)
           ^
   drivers/net/ethernet/chelsio/cxgb4/t4_hw.c:9684:15: note: Assigned value is 
garbage or undefined
           pi->rss_size = rss_size;
                        ^ ~~~~~~~~
   Suppressed 8 warnings (8 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.
   9 warnings generated.
   drivers/net/ethernet/intel/iavf/iavf_txrx.c:1816:3: warning: Value stored to 
'protocol' is never read [clang-analyzer-deadcode.DeadStores]
                   protocol = vhdr->h_vlan_encapsulated_proto;
                   ^          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/intel/iavf/iavf_txrx.c:1816:3: note: Value stored to 
'protocol' is never read
                   protocol = vhdr->h_vlan_encapsulated_proto;
                   ^          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   Suppressed 8 warnings (8 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.
   Suppressed 8 warnings (8 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.
   Suppressed 8 warnings (8 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.
   Suppressed 8 warnings (8 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.
   9 warnings generated.
   drivers/net/ethernet/intel/ice/ice_fw_update.c:366:17: warning: Value stored 
to 'dev' during its initialization is never read 
[clang-analyzer-deadcode.DeadStores]
           struct device *dev = ice_pf_to_dev(pf);
                          ^~~
   drivers/net/ethernet/intel/ice/ice_fw_update.c:366:17: note: Value stored to 
'dev' during its initialization is never read
           struct device *dev = ice_pf_to_dev(pf);
                          ^~~
   Suppressed 8 warnings (8 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.
   20 warnings generated.
>> drivers/net/ethernet/intel/ice/ice_lag.c:65:17: warning: Value stored to 
>> 'dev' during its initialization is never read 
>> [clang-analyzer-deadcode.DeadStores]
           struct device *dev = &lag->pf->pdev->dev;
                          ^~~   ~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/intel/ice/ice_lag.c:65:17: note: Value stored to 'dev' 
during its initialization is never read
           struct device *dev = &lag->pf->pdev->dev;
                          ^~~   ~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/intel/ice/ice_lag.c:67:2: warning: Value stored to 
>> 'name' is never read [clang-analyzer-deadcode.DeadStores]
           name = lag->netdev ? netdev_name(lag->netdev) : "unset";
           ^      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/intel/ice/ice_lag.c:67:2: note: Value stored to 'name' 
is never read
           name = lag->netdev ? netdev_name(lag->netdev) : "unset";
           ^      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/intel/ice/ice_lag.c:68:2: warning: Value stored to 
>> 'peer' is never read [clang-analyzer-deadcode.DeadStores]
           peer = lag->peer_netdev ? netdev_name(lag->peer_netdev) : "unset";
           ^      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/intel/ice/ice_lag.c:68:2: note: Value stored to 'peer' 
is never read
           peer = lag->peer_netdev ? netdev_name(lag->peer_netdev) : "unset";
           ^      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/intel/ice/ice_lag.c:69:2: warning: Value stored to 
>> 'upper' is never read [clang-analyzer-deadcode.DeadStores]
           upper = lag->upper_netdev ? netdev_name(lag->upper_netdev) : "unset";
           ^       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/intel/ice/ice_lag.c:69:2: note: Value stored to 'upper' 
is never read
           upper = lag->upper_netdev ? netdev_name(lag->upper_netdev) : "unset";
           ^       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/intel/ice/ice_lag.c:70:2: warning: Value stored to 
>> 'master' is never read [clang-analyzer-deadcode.DeadStores]
           master = lag->master ? "TRUE" : "FALSE";
           ^        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/intel/ice/ice_lag.c:70:2: note: Value stored to 
'master' is never read
           master = lag->master ? "TRUE" : "FALSE";
           ^        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/intel/ice/ice_lag.c:71:2: warning: Value stored to 
>> 'bonded' is never read [clang-analyzer-deadcode.DeadStores]
           bonded = lag->bonded ? "BONDED" : "UNBONDED";
           ^        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/intel/ice/ice_lag.c:71:2: note: Value stored to 
'bonded' is never read
           bonded = lag->bonded ? "BONDED" : "UNBONDED";
           ^        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/intel/ice/ice_lag.c:75:3: warning: Value stored to 
>> 'role' is never read [clang-analyzer-deadcode.DeadStores]
                   role = "NONE";
                   ^      ~~~~~~
   drivers/net/ethernet/intel/ice/ice_lag.c:75:3: note: Value stored to 'role' 
is never read
                   role = "NONE";
                   ^      ~~~~~~
   drivers/net/ethernet/intel/ice/ice_lag.c:78:3: warning: Value stored to 
'role' is never read [clang-analyzer-deadcode.DeadStores]
                   role = "PRIMARY";
                   ^      ~~~~~~~~~
   drivers/net/ethernet/intel/ice/ice_lag.c:78:3: note: Value stored to 'role' 
is never read
                   role = "PRIMARY";
                   ^      ~~~~~~~~~
   drivers/net/ethernet/intel/ice/ice_lag.c:81:3: warning: Value stored to 
'role' is never read [clang-analyzer-deadcode.DeadStores]
                   role = "BACKUP";
                   ^      ~~~~~~~~
   drivers/net/ethernet/intel/ice/ice_lag.c:81:3: note: Value stored to 'role' 
is never read
                   role = "BACKUP";
                   ^      ~~~~~~~~
   drivers/net/ethernet/intel/ice/ice_lag.c:84:3: warning: Value stored to 
'role' is never read [clang-analyzer-deadcode.DeadStores]
                   role = "UNSET";
                   ^      ~~~~~~~
   drivers/net/ethernet/intel/ice/ice_lag.c:84:3: note: Value stored to 'role' 
is never read
                   role = "UNSET";
                   ^      ~~~~~~~
   drivers/net/ethernet/intel/ice/ice_lag.c:87:3: warning: Value stored to 
'role' is never read [clang-analyzer-deadcode.DeadStores]
                   role = "ERROR";
                   ^      ~~~~~~~
   drivers/net/ethernet/intel/ice/ice_lag.c:87:3: note: Value stored to 'role' 
is never read
                   role = "ERROR";
                   ^      ~~~~~~~
   drivers/net/ethernet/intel/ice/ice_lag.c:356:17: warning: Value stored to 
'dev' during its initialization is never read 
[clang-analyzer-deadcode.DeadStores]
           struct device *dev = ice_pf_to_dev(lag->pf);
                          ^~~
   drivers/net/ethernet/intel/ice/ice_lag.c:356:17: note: Value stored to 'dev' 
during its initialization is never read
           struct device *dev = ice_pf_to_dev(lag->pf);
                          ^~~
   Suppressed 8 warnings (8 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.
   Suppressed 8 warnings (8 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.
   Suppressed 8 warnings (8 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.
   Suppressed 8 warnings (8 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.
   drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c:1579:4: warning: Value 
stored to 'ret' is never read [clang-analyzer-deadcode.DeadStores]
                           ret = kstrtouint(end, 10, &j);
                           ^     ~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c:1579:4: note: Value 
stored to 'ret' is never read
                           ret = kstrtouint(end, 10, &j);
                           ^     ~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c:2216:9: warning: Array 
subscript is undefined [clang-analyzer-core.uninitialized.ArraySubscript]
                           if (!isxdigit(*p))
                                ^
   include/linux/ctype.h:35:23: note: expanded from macro 'isxdigit'
   #define isxdigit(c)     ((__ismask(c)&(_D|_X)) != 0)
                             ^~~~~~~~~~~
   include/linux/ctype.h:23:22: note: expanded from macro '__ismask'
   #define __ismask(x) (_ctype[(int)(unsigned char)(x)])
                        ^      ~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c:2205:6: note: Assuming 
the condition is false
           if (count > sizeof(s) - 1)
               ^~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c:2205:2: note: Taking 
false branch
           if (count > sizeof(s) - 1)
           ^
   drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c:2207:6: note: Calling 
'copy_from_user'
           if (copy_from_user(s, buf, count))
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/uaccess.h:191:2: note: Taking true branch
           if (likely(check_copy_size(to, n, false)))
           ^
   include/linux/uaccess.h:192:7: note: Calling '_copy_from_user'
                   n = _copy_from_user(to, from, n);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/uaccess.h:157:6: note: Left side of '&&' is true
           if (!should_fail_usercopy() && likely(access_ok(from, n))) {
               ^
   include/linux/uaccess.h:157:33: note: Assuming the condition is false
           if (!should_fail_usercopy() && likely(access_ok(from, n))) {
                                          ^
   include/linux/compiler.h:45:22: note: expanded from macro 'likely'
   #  define likely(x)     (__branch_check__(x, 1, __builtin_constant_p(x)))
                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/compiler.h:23:50: note: expanded from macro '__branch_check__'
   #define __branch_check__(x, expect, is_constant) ({                     \
                                                    ^~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/uaccess.h:157:2: note: Taking false branch
           if (!should_fail_usercopy() && likely(access_ok(from, n))) {
           ^
   include/linux/uaccess.h:161:6: note: Assuming 'res' is 0, which participates 
in a condition later
           if (unlikely(res))
               ^
   include/linux/compiler.h:48:24: note: expanded from macro 'unlikely'
   #  define unlikely(x)   (__branch_check__(x, 0, __builtin_constant_p(x)))
                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/compiler.h:33:32: note: expanded from macro '__branch_check__'
                           ______r = __builtin_expect(!!(x), expect);      \

vim +/dev +65 drivers/net/ethernet/intel/ice/ice_lag.c

df006dd4b1dca8 Dave Ertman 2020-11-20  57  
df006dd4b1dca8 Dave Ertman 2020-11-20  58  /**
df006dd4b1dca8 Dave Ertman 2020-11-20  59   * ice_display_lag_info - print LAG 
info
df006dd4b1dca8 Dave Ertman 2020-11-20  60   * @lag: LAG info struct
df006dd4b1dca8 Dave Ertman 2020-11-20  61   */
df006dd4b1dca8 Dave Ertman 2020-11-20  62  static void 
ice_display_lag_info(struct ice_lag *lag)
df006dd4b1dca8 Dave Ertman 2020-11-20  63  {
df006dd4b1dca8 Dave Ertman 2020-11-20  64       const char *name, *peer, 
*upper, *role, *bonded, *master;
df006dd4b1dca8 Dave Ertman 2020-11-20 @65       struct device *dev = 
&lag->pf->pdev->dev;
df006dd4b1dca8 Dave Ertman 2020-11-20  66  
df006dd4b1dca8 Dave Ertman 2020-11-20 @67       name = lag->netdev ? 
netdev_name(lag->netdev) : "unset";
df006dd4b1dca8 Dave Ertman 2020-11-20 @68       peer = lag->peer_netdev ? 
netdev_name(lag->peer_netdev) : "unset";
df006dd4b1dca8 Dave Ertman 2020-11-20 @69       upper = lag->upper_netdev ? 
netdev_name(lag->upper_netdev) : "unset";
df006dd4b1dca8 Dave Ertman 2020-11-20 @70       master = lag->master ? "TRUE" : 
"FALSE";
df006dd4b1dca8 Dave Ertman 2020-11-20 @71       bonded = lag->bonded ? "BONDED" 
: "UNBONDED";
df006dd4b1dca8 Dave Ertman 2020-11-20  72  
df006dd4b1dca8 Dave Ertman 2020-11-20  73       switch (lag->role) {
df006dd4b1dca8 Dave Ertman 2020-11-20  74       case ICE_LAG_NONE:
df006dd4b1dca8 Dave Ertman 2020-11-20 @75               role = "NONE";
df006dd4b1dca8 Dave Ertman 2020-11-20  76               break;
df006dd4b1dca8 Dave Ertman 2020-11-20  77       case ICE_LAG_PRIMARY:
df006dd4b1dca8 Dave Ertman 2020-11-20  78               role = "PRIMARY";
df006dd4b1dca8 Dave Ertman 2020-11-20  79               break;
df006dd4b1dca8 Dave Ertman 2020-11-20  80       case ICE_LAG_BACKUP:
df006dd4b1dca8 Dave Ertman 2020-11-20  81               role = "BACKUP";
df006dd4b1dca8 Dave Ertman 2020-11-20  82               break;
df006dd4b1dca8 Dave Ertman 2020-11-20  83       case ICE_LAG_UNSET:
df006dd4b1dca8 Dave Ertman 2020-11-20  84               role = "UNSET";
df006dd4b1dca8 Dave Ertman 2020-11-20  85               break;
df006dd4b1dca8 Dave Ertman 2020-11-20  86       default:
df006dd4b1dca8 Dave Ertman 2020-11-20  87               role = "ERROR";
df006dd4b1dca8 Dave Ertman 2020-11-20  88       }
df006dd4b1dca8 Dave Ertman 2020-11-20  89  
df006dd4b1dca8 Dave Ertman 2020-11-20  90       dev_dbg(dev, "%s %s, peer:%s, 
upper:%s, role:%s, master:%s\n", name,
df006dd4b1dca8 Dave Ertman 2020-11-20  91               bonded, peer, upper, 
role, master);
df006dd4b1dca8 Dave Ertman 2020-11-20  92  }
df006dd4b1dca8 Dave Ertman 2020-11-20  93  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/[email protected]
_______________________________________________
kbuild mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to