[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202010200420.xTvm5FAr-lkp@intel.com>
Date: Tue, 20 Oct 2020 04:23:40 +0800
From: kernel test robot <lkp@...el.com>
To: Toke Høiland-Jørgensen <toke@...hat.com>,
Daniel Borkmann <daniel@...earbox.net>
Cc: kbuild-all@...ts.01.org, clang-built-linux@...glegroups.com,
David Ahern <dsahern@...nel.org>, netdev@...r.kernel.org,
bpf@...r.kernel.org
Subject: Re: [PATCH bpf 1/2] bpf_redirect_neigh: Support supplying the
nexthop as a helper parameter
Hi "Toke,
I love your patch! Yet something to improve:
[auto build test ERROR on bpf/master]
url: https://github.com/0day-ci/linux/commits/Toke-H-iland-J-rgensen/bpf-Rework-bpf_redirect_neigh-to-allow-supplying-nexthop-from-caller/20201020-000711
base: https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf.git master
config: x86_64-randconfig-a016-20201019 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 094e9f4779eb9b5c6a49014f2f80b8cbb833572f)
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 x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
# https://github.com/0day-ci/linux/commit/250f45235b06a53ae71587457c94d9c3a3a99f9a
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Toke-H-iland-J-rgensen/bpf-Rework-bpf_redirect_neigh-to-allow-supplying-nexthop-from-caller/20201020-000711
git checkout 250f45235b06a53ae71587457c94d9c3a3a99f9a
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>
All error/warnings (new ones prefixed by >>):
>> net/core/filter.c:2268:27: error: redefinition of parameter 'dev'
struct net_device *dev, struct bpf_nh_params *nh)
^
net/core/filter.c:2267:76: note: previous declaration is here
static int __bpf_redirect_neigh_v6(struct sk_buff *skb, struct net_device *dev,
^
>> net/core/filter.c:2268:27: warning: omitting the parameter name in a function definition is a C2x extension [-Wc2x-extensions]
struct net_device *dev, struct bpf_nh_params *nh)
^
1 warning and 1 error generated.
vim +/dev +2268 net/core/filter.c
2225
2226 static int __bpf_redirect_neigh_v6(struct sk_buff *skb, struct net_device *dev,
2227 struct bpf_nh_params *nh)
2228 {
2229 const struct ipv6hdr *ip6h = ipv6_hdr(skb);
2230 struct net *net = dev_net(dev);
2231 int err, ret = NET_XMIT_DROP;
2232
2233 if (!nh) {
2234 struct dst_entry *dst;
2235 struct flowi6 fl6 = {
2236 .flowi6_flags = FLOWI_FLAG_ANYSRC,
2237 .flowi6_mark = skb->mark,
2238 .flowlabel = ip6_flowinfo(ip6h),
2239 .flowi6_oif = dev->ifindex,
2240 .flowi6_proto = ip6h->nexthdr,
2241 .daddr = ip6h->daddr,
2242 .saddr = ip6h->saddr,
2243 };
2244
2245 dst = ipv6_stub->ipv6_dst_lookup_flow(net, NULL, &fl6, NULL);
2246 if (IS_ERR(dst))
2247 goto out_drop;
2248
2249 skb_dst_set(skb, dst);
2250 } else if (nh->nh_family != AF_INET6) {
2251 goto out_drop;
2252 }
2253
2254 err = bpf_out_neigh_v6(net, skb, dev, nh);
2255 if (unlikely(net_xmit_eval(err)))
2256 dev->stats.tx_errors++;
2257 else
2258 ret = NET_XMIT_SUCCESS;
2259 goto out_xmit;
2260 out_drop:
2261 dev->stats.tx_errors++;
2262 kfree_skb(skb);
2263 out_xmit:
2264 return ret;
2265 }
2266 #else
2267 static int __bpf_redirect_neigh_v6(struct sk_buff *skb, struct net_device *dev,
> 2268 struct net_device *dev, struct bpf_nh_params *nh)
2269 {
2270 kfree_skb(skb);
2271 return NET_XMIT_DROP;
2272 }
2273 #endif /* CONFIG_IPV6 */
2274
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
Download attachment ".config.gz" of type "application/gzip" (31734 bytes)
Powered by blists - more mailing lists