tree:   https://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git 
bpf
head:   772b164e17bd40659b5a45e26389e4d9418162e4
commit: 772b164e17bd40659b5a45e26389e4d9418162e4 [9/9] mac80211: support bpf 
monitor filter
reproduce:
        # apt-get install sparse
        git checkout 772b164e17bd40659b5a45e26389e4d9418162e4
        make ARCH=x86_64 allmodconfig
        make C=1 CF=-D__CHECK_ENDIAN__


sparse warnings: (new ones prefixed by >>)

   include/linux/compiler.h:264:8: sparse: attribute 'no_sanitize_address': 
unknown attribute
>> net/mac80211/iface.c:1113:40: sparse: incompatible types in comparison 
>> expression (different address spaces)
   net/mac80211/iface.c:1115:17: sparse: incompatible types in comparison 
expression (different address spaces)
--
   include/linux/compiler.h:264:8: sparse: attribute 'no_sanitize_address': 
unknown attribute
>> net/mac80211/cfg.c:110:40: sparse: incompatible types in comparison 
>> expression (different address spaces)
   net/mac80211/cfg.c:113:25: sparse: incompatible types in comparison 
expression (different address spaces)
--
   include/linux/compiler.h:264:8: sparse: attribute 'no_sanitize_address': 
unknown attribute
>> net/mac80211/rx.c:573:26: sparse: incompatible types in comparison 
>> expression (different address spaces)

vim +1113 net/mac80211/iface.c

  1097  static void ieee80211_teardown_sdata(struct ieee80211_sub_if_data 
*sdata)
  1098  {
  1099          int i;
  1100  
  1101          /* free extra data */
  1102          ieee80211_free_keys(sdata, false);
  1103  
  1104          ieee80211_debugfs_remove_netdev(sdata);
  1105  
  1106          for (i = 0; i < IEEE80211_FRAGMENT_MAX; i++)
  1107                  __skb_queue_purge(&sdata->fragments[i].skb_list);
  1108          sdata->fragment_next = 0;
  1109  
  1110          if (ieee80211_vif_is_mesh(&sdata->vif)) {
  1111                  ieee80211_mesh_teardown_sdata(sdata);
  1112          } else if (sdata->vif.type == NL80211_IFTYPE_MONITOR) {
> 1113                  struct bpf_prog *old = 
> rtnl_dereference(sdata->u.mntr.filter);
  1114  
  1115                  RCU_INIT_POINTER(sdata->u.mntr.filter, NULL);
  1116                  if (old)
  1117                          bpf_prog_put(old);
  1118          }
  1119  }
  1120  
  1121  static void ieee80211_uninit(struct net_device *dev)

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Reply via email to