[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190719100743.2ea14575@cakuba.netronome.com>
Date: Fri, 19 Jul 2019 10:07:43 -0700
From: Jakub Kicinski <jakub.kicinski@...ronome.com>
To: Pablo Neira Ayuso <pablo@...filter.org>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: ENOBUILD in nf_tables
Hi Pablo!
I hit the following build breakage on net with the config attached.
GCC 9, doesn't seem like your just-posted series fixes this?
From a quick scan it doesn't seem like your just posted series fixes
that, but I didn't actually test (the threading is broken and patchwork
CC include/net/netfilter/nf_tables_offload.h.s
In file included from ../include/net/netfilter/nf_tables.h:8,
from ./../include/net/netfilter/nf_tables_offload.h:5,
from <command-line>:
../include/linux/netfilter/x_tables.h: In function ‘xt_net’:
../include/linux/netfilter/x_tables.h:46:19: error: dereferencing pointer to incomplete type ‘const struct nf_hook_state’
46 | return par->state->net;
| ^~
In file included from ../include/net/netfilter/nf_tables.h:8,
from ./../include/net/netfilter/nf_tables_offload.h:5,
from <command-line>:
../include/linux/netfilter/x_tables.h: At top level:
../include/linux/netfilter/x_tables.h:449:64: error: unknown type name ‘nf_hookfn’
449 | struct nf_hook_ops *xt_hook_ops_alloc(const struct xt_table *, nf_hookfn *);
| ^~~~~~~~~
In file included from ../include/net/netfilter/nf_tables.h:12,
from ./../include/net/netfilter/nf_tables_offload.h:5,
from <command-line>:
../include/net/netfilter/nf_flow_table.h:19:2: error: unknown type name ‘nf_hookfn’
19 | nf_hookfn *hook;
| ^~~~~~~~~
In file included from ./../include/net/netfilter/nf_tables_offload.h:5,
from <command-line>:
../include/net/netfilter/nf_tables.h:929:2: error: unknown type name ‘nf_hookfn’
929 | nf_hookfn *hooks[NF_MAX_HOOKS];
| ^~~~~~~~~
../include/net/netfilter/nf_tables.h:957:22: error: field ‘ops’ has incomplete type
957 | struct nf_hook_ops ops;
| ^~~
../include/net/netfilter/nf_tables.h: In function ‘nft_gencursor_next’:
../include/net/netfilter/nf_tables.h:1223:12: error: ‘const struct net’ has no member named ‘nft’
1223 | return net->nft.gencursor + 1 == 1 ? 1 : 0;
| ^~
In file included from ../include/linux/kernel.h:11,
from ../include/net/flow_offload.h:4,
from ./../include/net/netfilter/nf_tables_offload.h:4,
from <command-line>:
../include/net/netfilter/nf_tables.h: In function ‘nft_genmask_cur’:
../include/net/netfilter/nf_tables.h:1234:27: error: ‘const struct net’ has no member named ‘nft’
1234 | return 1 << READ_ONCE(net->nft.gencursor);
| ^~
../include/linux/compiler.h:256:17: note: in definition of macro ‘__READ_ONCE’
256 | union { typeof(x) __val; char __c[1]; } __u; \
| ^
../include/net/netfilter/nf_tables.h:1234:14: note: in expansion of macro ‘READ_ONCE’
1234 | return 1 << READ_ONCE(net->nft.gencursor);
| ^~~~~~~~~
../include/net/netfilter/nf_tables.h:1234:27: error: ‘const struct net’ has no member named ‘nft’
1234 | return 1 << READ_ONCE(net->nft.gencursor);
| ^~
../include/linux/compiler.h:258:22: note: in definition of macro ‘__READ_ONCE’
258 | __read_once_size(&(x), __u.__c, sizeof(x)); \
| ^
../include/net/netfilter/nf_tables.h:1234:14: note: in expansion of macro ‘READ_ONCE’
1234 | return 1 << READ_ONCE(net->nft.gencursor);
| ^~~~~~~~~
../include/net/netfilter/nf_tables.h:1234:27: error: ‘const struct net’ has no member named ‘nft’
1234 | return 1 << READ_ONCE(net->nft.gencursor);
| ^~
../include/linux/compiler.h:258:42: note: in definition of macro ‘__READ_ONCE’
258 | __read_once_size(&(x), __u.__c, sizeof(x)); \
| ^
../include/net/netfilter/nf_tables.h:1234:14: note: in expansion of macro ‘READ_ONCE’
1234 | return 1 << READ_ONCE(net->nft.gencursor);
| ^~~~~~~~~
../include/net/netfilter/nf_tables.h:1234:27: error: ‘const struct net’ has no member named ‘nft’
1234 | return 1 << READ_ONCE(net->nft.gencursor);
| ^~
../include/linux/compiler.h:260:30: note: in definition of macro ‘__READ_ONCE’
260 | __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
| ^
../include/net/netfilter/nf_tables.h:1234:14: note: in expansion of macro ‘READ_ONCE’
1234 | return 1 << READ_ONCE(net->nft.gencursor);
| ^~~~~~~~~
../include/net/netfilter/nf_tables.h:1234:27: error: ‘const struct net’ has no member named ‘nft’
1234 | return 1 << READ_ONCE(net->nft.gencursor);
| ^~
../include/linux/compiler.h:260:50: note: in definition of macro ‘__READ_ONCE’
260 | __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
| ^
../include/net/netfilter/nf_tables.h:1234:14: note: in expansion of macro ‘READ_ONCE’
1234 | return 1 << READ_ONCE(net->nft.gencursor);
| ^~~~~~~~~
../scripts/Makefile.build:304: recipe for target 'include/net/netfilter/nf_tables_offload.h.s' failed
make[2]: *** [include/net/netfilter/nf_tables_offload.h.s] Error 1
make[2]: *** Waiting for unfinished jobs....
/home/jkicinski/devel/linux/Makefile:1077: recipe for target 'include' failed
make[1]: *** [include] Error 2
make[1]: Leaving directory '/home/jkicinski/devel/linux/build_randconfig'
Makefile:179: recipe for target 'sub-make' failed
make: *** [sub-make] Error 2
Download attachment ".config" of type "application/octet-stream" (152266 bytes)
Powered by blists - more mailing lists