[asahilinux:bits/080-wifi 22/28] drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:4075:42: sparse: sparse: incorrect type in assignment (different base types)
From: kernel test robot
Date: Tue May 03 2022 - 05:20:35 EST
tree: https://github.com/AsahiLinux/linux bits/080-wifi
head: a61fbffc5fad05fe49dfd9a09b3c2482ac250d46
commit: 02dc276155c1728343ebf406ab567b56d3891f19 [22/28] brcmfmac: cfg80211: Add support for PMKID_V3 operations
config: mips-randconfig-s032-20220501 (https://download.01.org/0day-ci/archive/20220503/202205031736.gRzjuzo3-lkp@xxxxxxxxx/config)
compiler: mipsel-linux-gcc (GCC) 11.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.4-dirty
# https://github.com/AsahiLinux/linux/commit/02dc276155c1728343ebf406ab567b56d3891f19
git remote add asahilinux https://github.com/AsahiLinux/linux
git fetch --no-tags asahilinux bits/080-wifi
git checkout 02dc276155c1728343ebf406ab567b56d3891f19
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=mips SHELL=/bin/bash drivers/net/wireless/broadcom/brcm80211/brcmfmac/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>
sparse warnings: (new ones prefixed by >>)
command-line: note: in included file:
builtin:1:9: sparse: sparse: preprocessor token __ATOMIC_ACQUIRE redefined
builtin:0:0: sparse: this was the original definition
builtin:1:9: sparse: sparse: preprocessor token __ATOMIC_SEQ_CST redefined
builtin:0:0: sparse: this was the original definition
builtin:1:9: sparse: sparse: preprocessor token __ATOMIC_ACQ_REL redefined
builtin:0:0: sparse: this was the original definition
builtin:1:9: sparse: sparse: preprocessor token __ATOMIC_RELEASE redefined
builtin:0:0: sparse: this was the original definition
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:1087:28: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le16 [usertype] version @@ got int @@
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:1087:28: sparse: expected restricted __le16 [usertype] version
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:1087:28: sparse: got int
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:1149:38: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] scan_type @@ got int @@
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:1149:38: sparse: expected restricted __le32 [usertype] scan_type
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:1149:38: sparse: got int
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:790:30: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned char [usertype] scan_type @@ got restricted __le32 [usertype] scan_type @@
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:790:30: sparse: expected unsigned char [usertype] scan_type
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:790:30: sparse: got restricted __le32 [usertype] scan_type
>> drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:4075:42: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] time_left @@ got unsigned int @@
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:4075:42: sparse: expected restricted __le32 [usertype] time_left
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:4075:42: sparse: got unsigned int
vim +4075 drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
4053
4054 static s32
4055 brcmf_pmksa_v3_op(struct brcmf_if *ifp, struct cfg80211_pmksa *pmksa,
4056 bool alive)
4057 {
4058 struct brcmf_pmk_op_v3_le *pmk_op;
4059 int length = offsetof(struct brcmf_pmk_op_v3_le, pmk);
4060 int ret;
4061
4062 pmk_op = kzalloc(sizeof(*pmk_op), GFP_KERNEL);
4063 pmk_op->version = cpu_to_le16(BRCMF_PMKSA_VER_3);
4064
4065 if (!pmksa) {
4066 /* Flush operation, operate on entire list */
4067 pmk_op->count = cpu_to_le16(0);
4068 } else {
4069 /* Single PMK operation */
4070 pmk_op->count = cpu_to_le16(1);
4071 length += sizeof(struct brcmf_pmksa_v3);
4072 memcpy(pmk_op->pmk[0].bssid, pmksa->bssid, ETH_ALEN);
4073 memcpy(pmk_op->pmk[0].pmkid, pmksa->pmkid, WLAN_PMKID_LEN);
4074 pmk_op->pmk[0].pmkid_len = WLAN_PMKID_LEN;
> 4075 pmk_op->pmk[0].time_left = alive ? BRCMF_PMKSA_NO_EXPIRY : 0;
4076 }
4077
4078 pmk_op->length = cpu_to_le16(length);
4079
4080 ret = brcmf_fil_iovar_data_set(ifp, "pmkid_info", pmk_op, sizeof(*pmk_op));
4081 kfree(pmk_op);
4082 return ret;
4083 }
4084
--
0-DAY CI Kernel Test Service
https://01.org/lkp