[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202210060027.8dQ6IO6g-lkp@intel.com>
Date: Thu, 6 Oct 2022 01:00:54 +0800
From: kernel test robot <lkp@...el.com>
To: Daniel Borkmann <daniel@...earbox.net>
Cc: kbuild-all@...ts.01.org, Daniel Borkmann <daniel@...earbox.net>,
linux-kernel@...r.kernel.org,
Nikolay Aleksandrov <razor@...ckwall.org>
Subject: [cilium:pr/bpf-tc-links5 1/10] net/core/dev.c:3963:36: sparse:
sparse: incompatible types in comparison expression (different address
spaces):
tree: https://github.com/cilium/linux.git pr/bpf-tc-links5
head: 7c3ffc4a0548d3177f68bc87af7c9775e5bcdb86
commit: d23123fce93d005f0c30e114da971359b0883cee [1/10] bpf: Add initial fd-based API to attach tc BPF programs
config: x86_64-randconfig-s021
compiler: gcc-11 (Debian 11.3.0-5) 11.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.4-39-gce1a6720-dirty
# https://github.com/cilium/linux/commit/d23123fce93d005f0c30e114da971359b0883cee
git remote add cilium https://github.com/cilium/linux.git
git fetch --no-tags cilium pr/bpf-tc-links5
git checkout d23123fce93d005f0c30e114da971359b0883cee
# save the config file
mkdir build_dir && cp config build_dir/.config
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=x86_64 SHELL=/bin/bash net/core/ net/sched/
If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@...el.com>
sparse warnings: (new ones prefixed by >>)
net/core/dev.c:3325:23: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected restricted __wsum [usertype] csum @@ got unsigned int @@
net/core/dev.c:3325:23: sparse: expected restricted __wsum [usertype] csum
net/core/dev.c:3325:23: sparse: got unsigned int
net/core/dev.c:3325:23: sparse: sparse: cast from restricted __wsum
>> net/core/dev.c:3963:36: sparse: sparse: incompatible types in comparison expression (different address spaces):
>> net/core/dev.c:3963:36: sparse: struct mini_Qdisc [noderef] __rcu *
>> net/core/dev.c:3963:36: sparse: struct mini_Qdisc *
net/core/dev.c:204:9: sparse: sparse: context imbalance in 'unlist_netdevice' - different lock contexts for basic block
net/core/dev.c:3829:17: sparse: sparse: context imbalance in '__dev_queue_xmit' - different lock contexts for basic block
net/core/dev.c:5185:17: sparse: sparse: context imbalance in 'net_tx_action' - different lock contexts for basic block
--
>> net/sched/sch_ingress.c:92:53: sparse: sparse: incorrect type in argument 3 (different address spaces) @@ expected struct mini_Qdisc [noderef] __rcu **p_miniq @@ got struct mini_Qdisc ** @@
net/sched/sch_ingress.c:92:53: sparse: expected struct mini_Qdisc [noderef] __rcu **p_miniq
net/sched/sch_ingress.c:92:53: sparse: got struct mini_Qdisc **
net/sched/sch_ingress.c:245:61: sparse: sparse: incorrect type in argument 3 (different address spaces) @@ expected struct mini_Qdisc [noderef] __rcu **p_miniq @@ got struct mini_Qdisc ** @@
net/sched/sch_ingress.c:245:61: sparse: expected struct mini_Qdisc [noderef] __rcu **p_miniq
net/sched/sch_ingress.c:245:61: sparse: got struct mini_Qdisc **
net/sched/sch_ingress.c:264:60: sparse: sparse: incorrect type in argument 3 (different address spaces) @@ expected struct mini_Qdisc [noderef] __rcu **p_miniq @@ got struct mini_Qdisc ** @@
net/sched/sch_ingress.c:264:60: sparse: expected struct mini_Qdisc [noderef] __rcu **p_miniq
net/sched/sch_ingress.c:264:60: sparse: got struct mini_Qdisc **
vim +3963 net/core/dev.c
3957
3958 #ifdef CONFIG_NET_XGRESS
3959 static int tc_run(struct xtc_entry *entry, struct sk_buff *skb)
3960 {
3961 int ret = TC_ACT_UNSPEC;
3962 #ifdef CONFIG_NET_CLS_ACT
> 3963 struct mini_Qdisc *miniq = rcu_dereference_bh(entry->parent->miniq);
3964 struct tcf_result res;
3965
3966 if (!miniq)
3967 return ret;
3968
3969 tc_skb_cb(skb)->mru = 0;
3970 tc_skb_cb(skb)->post_ct = false;
3971
3972 mini_qdisc_bstats_cpu_update(miniq, skb);
3973 ret = tcf_classify(skb, miniq->block, miniq->filter_list, &res, false);
3974 /* Only tcf related quirks below. */
3975 switch (ret) {
3976 case TC_ACT_SHOT:
3977 mini_qdisc_qstats_cpu_drop(miniq);
3978 break;
3979 case TC_ACT_OK:
3980 case TC_ACT_RECLASSIFY:
3981 skb->tc_index = TC_H_MIN(res.classid);
3982 break;
3983 }
3984 #endif /* CONFIG_NET_CLS_ACT */
3985 return ret;
3986 }
3987
--
0-DAY CI Kernel Test Service
https://01.org/lkp
View attachment "config" of type "text/plain" (167753 bytes)
Powered by blists - more mailing lists