tree:
https://git.kernel.org/pub/scm/linux/kernel/git/mellanox/linux.git queue-next
head: 12481f34a10b2cffb9ac5bf6a5e484f3c70e6ce0
commit: 32273a839846aa8d6d184ba8084796bc4b43f6f6 [1924/1997] netfilter: flowtable: Add
FLOW_OFFLOAD_XMIT_UNSPEC xmit type
config: x86_64-randconfig-a014-20210421 (attached as .config)
compiler: clang version 13.0.0 (
https://github.com/llvm/llvm-project
d87b9b81ccb95217181ce75515c6c68bbb408ca4)
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://git.kernel.org/pub/scm/linux/kernel/git/mellanox/linux.git/commit...
git remote add mellanox
https://git.kernel.org/pub/scm/linux/kernel/git/mellanox/linux.git
git fetch --no-tags mellanox queue-next
git checkout 32273a839846aa8d6d184ba8084796bc4b43f6f6
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
> net/netfilter/nf_flow_table_core.c:116:10: warning: enumeration
value 'FLOW_OFFLOAD_XMIT_UNSPEC' not handled in switch [-Wswitch]
switch (route->tuple[dir].xmit_type) {
^
1 warning generated.
vim +/FLOW_OFFLOAD_XMIT_UNSPEC +116 net/netfilter/nf_flow_table_core.c
8b9229d15877ec Pablo Neira Ayuso 2021-03-28 88
f1363e058b84e6 Pablo Neira Ayuso 2019-11-12 89 static int
flow_offload_fill_route(struct flow_offload *flow,
f1363e058b84e6 Pablo Neira Ayuso 2019-11-12 90 const struct nf_flow_route
*route,
f1363e058b84e6 Pablo Neira Ayuso 2019-11-12 91 enum flow_offload_tuple_dir dir)
f1363e058b84e6 Pablo Neira Ayuso 2019-11-12 92 {
f1363e058b84e6 Pablo Neira Ayuso 2019-11-12 93 struct flow_offload_tuple *flow_tuple =
&flow->tuplehash[dir].tuple;
f1363e058b84e6 Pablo Neira Ayuso 2019-11-12 94 struct dst_entry *dst =
route->tuple[dir].dst;
4cd91f7c290f64 Pablo Neira Ayuso 2021-03-24 95 int i, j = 0;
f1363e058b84e6 Pablo Neira Ayuso 2019-11-12 96
f1363e058b84e6 Pablo Neira Ayuso 2019-11-12 97 switch (flow_tuple->l3proto) {
f1363e058b84e6 Pablo Neira Ayuso 2019-11-12 98 case NFPROTO_IPV4:
f1363e058b84e6 Pablo Neira Ayuso 2019-11-12 99 flow_tuple->mtu =
ip_dst_mtu_maybe_forward(dst, true);
f1363e058b84e6 Pablo Neira Ayuso 2019-11-12 100 break;
f1363e058b84e6 Pablo Neira Ayuso 2019-11-12 101 case NFPROTO_IPV6:
f1363e058b84e6 Pablo Neira Ayuso 2019-11-12 102 flow_tuple->mtu =
ip6_dst_mtu_forward(dst);
f1363e058b84e6 Pablo Neira Ayuso 2019-11-12 103 break;
f1363e058b84e6 Pablo Neira Ayuso 2019-11-12 104 }
f1363e058b84e6 Pablo Neira Ayuso 2019-11-12 105
c63a7cc4d795c0 Pablo Neira Ayuso 2021-03-24 106 flow_tuple->iifidx =
route->tuple[dir].in.ifindex;
4cd91f7c290f64 Pablo Neira Ayuso 2021-03-24 107 for (i =
route->tuple[dir].in.num_encaps - 1; i >= 0; i--) {
4cd91f7c290f64 Pablo Neira Ayuso 2021-03-24 108 flow_tuple->encap[j].id =
route->tuple[dir].in.encap[i].id;
4cd91f7c290f64 Pablo Neira Ayuso 2021-03-24 109 flow_tuple->encap[j].proto =
route->tuple[dir].in.encap[i].proto;
26267bf9bb57d5 Felix Fietkau 2021-03-24 110 if
(route->tuple[dir].in.ingress_vlans & BIT(i))
26267bf9bb57d5 Felix Fietkau 2021-03-24 111 flow_tuple->in_vlan_ingress |=
BIT(j);
4cd91f7c290f64 Pablo Neira Ayuso 2021-03-24 112 j++;
4cd91f7c290f64 Pablo Neira Ayuso 2021-03-24 113 }
4cd91f7c290f64 Pablo Neira Ayuso 2021-03-24 114 flow_tuple->encap_num =
route->tuple[dir].in.num_encaps;
7a27f6ab41356e Pablo Neira Ayuso 2021-03-24 115
7a27f6ab41356e Pablo Neira Ayuso 2021-03-24 @116 switch (route->tuple[dir].xmit_type)
{
7a27f6ab41356e Pablo Neira Ayuso 2021-03-24 117 case FLOW_OFFLOAD_XMIT_DIRECT:
7a27f6ab41356e Pablo Neira Ayuso 2021-03-24 118 memcpy(flow_tuple->out.h_dest,
route->tuple[dir].out.h_dest,
7a27f6ab41356e Pablo Neira Ayuso 2021-03-24 119 ETH_ALEN);
7a27f6ab41356e Pablo Neira Ayuso 2021-03-24 120 memcpy(flow_tuple->out.h_source,
route->tuple[dir].out.h_source,
7a27f6ab41356e Pablo Neira Ayuso 2021-03-24 121 ETH_ALEN);
7a27f6ab41356e Pablo Neira Ayuso 2021-03-24 122 flow_tuple->out.ifidx =
route->tuple[dir].out.ifindex;
73f97025a972cd Pablo Neira Ayuso 2021-03-24 123 flow_tuple->out.hw_ifidx =
route->tuple[dir].out.hw_ifindex;
7a27f6ab41356e Pablo Neira Ayuso 2021-03-24 124 break;
7a27f6ab41356e Pablo Neira Ayuso 2021-03-24 125 case FLOW_OFFLOAD_XMIT_XFRM:
7a27f6ab41356e Pablo Neira Ayuso 2021-03-24 126 case FLOW_OFFLOAD_XMIT_NEIGH:
7a27f6ab41356e Pablo Neira Ayuso 2021-03-24 127 if
(!dst_hold_safe(route->tuple[dir].dst))
7a27f6ab41356e Pablo Neira Ayuso 2021-03-24 128 return -1;
7a27f6ab41356e Pablo Neira Ayuso 2021-03-24 129
f1363e058b84e6 Pablo Neira Ayuso 2019-11-12 130 flow_tuple->dst_cache = dst;
8b9229d15877ec Pablo Neira Ayuso 2021-03-28 131 flow_tuple->dst_cookie =
flow_offload_dst_cookie(flow_tuple);
7a27f6ab41356e Pablo Neira Ayuso 2021-03-24 132 break;
7a27f6ab41356e Pablo Neira Ayuso 2021-03-24 133 }
7a27f6ab41356e Pablo Neira Ayuso 2021-03-24 134 flow_tuple->xmit_type =
route->tuple[dir].xmit_type;
f1363e058b84e6 Pablo Neira Ayuso 2019-11-12 135
f1363e058b84e6 Pablo Neira Ayuso 2019-11-12 136 return 0;
f1363e058b84e6 Pablo Neira Ayuso 2019-11-12 137 }
f1363e058b84e6 Pablo Neira Ayuso 2019-11-12 138
:::::: The code at line 116 was first introduced by commit
:::::: 7a27f6ab41356ecba47ec2bec6d635704c169779 netfilter: flowtable: use
dev_fill_forward_path() to obtain egress device
:::::: TO: Pablo Neira Ayuso <pablo(a)netfilter.org>
:::::: CC: David S. Miller <davem(a)davemloft.net>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org