[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202210042038.BDpJoFV7-lkp@intel.com>
Date: Tue, 4 Oct 2022 20:35:17 +0800
From: kernel test robot <lkp@...el.com>
To: Daniel Borkmann <daniel@...earbox.net>
Cc: llvm@...ts.linux.dev, 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-links4 1/10] net/core/dev.c:4046:12: error: call
to undeclared function 'tc_run'; ISO C99 and later do not support implicit
function declarations
tree: https://github.com/cilium/linux.git pr/bpf-tc-links4
head: 8826dfdc19ba57ab07de1ae4f27a2bc27e74b273
commit: 66745416de396db2f7951b8423d7e2a3cdc649dd [1/10] bpf: Add initial fd-based API to attach tc BPF programs
config: arm-randconfig-r012-20221003
compiler: clang version 16.0.0 (https://github.com/llvm/llvm-project 791a7ae1ba3efd6bca96338e10ffde557ba83920)
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://github.com/cilium/linux/commit/66745416de396db2f7951b8423d7e2a3cdc649dd
git remote add cilium https://github.com/cilium/linux.git
git fetch --no-tags cilium pr/bpf-tc-links4
git checkout 66745416de396db2f7951b8423d7e2a3cdc649dd
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash net/
If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@...el.com>
All errors (new ones prefixed by >>):
>> net/core/dev.c:4046:12: error: call to undeclared function 'tc_run'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
sch_ret = tc_run(entry, skb);
^
net/core/dev.c:4046:12: note: did you mean 'xtc_run'?
net/core/dev.c:4002:1: note: 'xtc_run' declared here
xtc_run(const struct xtc_entry *entry, struct sk_buff *skb,
^
net/core/dev.c:4094:12: error: call to undeclared function 'tc_run'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
sch_ret = tc_run(entry, skb);
^
2 errors generated.
vim +/tc_run +4046 net/core/dev.c
4023
4024 static __always_inline struct sk_buff *
4025 sch_handle_ingress(struct sk_buff *skb, struct packet_type **pt_prev, int *ret,
4026 struct net_device *orig_dev, bool *another)
4027 {
4028 struct xtc_entry *entry = rcu_dereference_bh(skb->dev->xtc_ingress);
4029 int sch_ret;
4030
4031 if (!entry)
4032 return skb;
4033 if (*pt_prev) {
4034 *ret = deliver_skb(skb, *pt_prev, orig_dev);
4035 *pt_prev = NULL;
4036 }
4037
4038 qdisc_skb_cb(skb)->pkt_len = skb->len;
4039 xtc_set_ingress(skb, true);
4040
4041 if (static_branch_unlikely(&xtc_needed_key)) {
4042 sch_ret = xtc_run(entry, skb, true);
4043 if (sch_ret != TC_ACT_UNSPEC)
4044 goto ingress_verdict;
4045 }
> 4046 sch_ret = tc_run(entry, skb);
4047 ingress_verdict:
4048 switch (sch_ret) {
4049 case TC_ACT_REDIRECT:
4050 /* skb_mac_header check was done by BPF, so we can safely
4051 * push the L2 header back before redirecting to another
4052 * netdev.
4053 */
4054 __skb_push(skb, skb->mac_len);
4055 if (skb_do_redirect(skb) == -EAGAIN) {
4056 __skb_pull(skb, skb->mac_len);
4057 *another = true;
4058 break;
4059 }
4060 return NULL;
4061 case TC_ACT_SHOT:
4062 kfree_skb_reason(skb, SKB_DROP_REASON_TC_INGRESS);
4063 return NULL;
4064 /* used by tc_run */
4065 case TC_ACT_STOLEN:
4066 case TC_ACT_QUEUED:
4067 case TC_ACT_TRAP:
4068 consume_skb(skb);
4069 fallthrough;
4070 case TC_ACT_CONSUMED:
4071 return NULL;
4072 }
4073
4074 return skb;
4075 }
4076
--
0-DAY CI Kernel Test Service
https://01.org/lkp
View attachment "config" of type "text/plain" (169808 bytes)
Powered by blists - more mailing lists