* Re: linux-next: build failure after merge of the netfilter-next tree
[not found] <20190708133958.6a30f5cb@canb.auug.org.au>
@ 2019-07-09 3:59 ` Stephen Rothwell
0 siblings, 0 replies; 2+ messages in thread
From: Stephen Rothwell @ 2019-07-09 3:59 UTC (permalink / raw)
To: Pablo Neira Ayuso, NetFilter, Masahiro Yamada, David Miller,
Networking
Cc: Linux Next Mailing List, Linux Kernel Mailing List, wenxu
[-- Attachment #1: Type: text/plain, Size: 7676 bytes --]
Hi all,
On Mon, 8 Jul 2019 13:39:58 +1000 Stephen Rothwell <sfr@canb.auug.org.au> wrote:
>
> After merging the netfilter-next tree, today's linux-next build (x86_64
> allmodconfig) failed like this:
>
> In file included from <command-line>:
> include/net/netfilter/nft_meta.h:6:21: warning: 'key' is narrower than values of its type
> enum nft_meta_keys key:8;
> ^~~
> include/net/netfilter/nft_meta.h:6:21: error: field 'key' has incomplete type
> include/net/netfilter/nft_meta.h:8:22: warning: 'dreg' is narrower than values of its type
> enum nft_registers dreg:8;
> ^~~~
> include/net/netfilter/nft_meta.h:8:22: error: field 'dreg' has incomplete type
> include/net/netfilter/nft_meta.h:9:22: warning: 'sreg' is narrower than values of its type
> enum nft_registers sreg:8;
> ^~~~
> include/net/netfilter/nft_meta.h:9:22: error: field 'sreg' has incomplete type
> include/net/netfilter/nft_meta.h:13:32: error: array type has incomplete element type 'struct nla_policy'
> extern const struct nla_policy nft_meta_policy[];
> ^~~~~~~~~~~~~~~
> include/net/netfilter/nft_meta.h:17:22: warning: 'struct nlattr' declared inside parameter list will not be visible outside of this definition or declaration
> const struct nlattr * const tb[]);
> ^~~~~~
> include/net/netfilter/nft_meta.h:16:22: warning: 'struct nft_expr' declared inside parameter list will not be visible outside of this definition or declaration
> const struct nft_expr *expr,
> ^~~~~~~~
> include/net/netfilter/nft_meta.h:15:36: warning: 'struct nft_ctx' declared inside parameter list will not be visible outside of this definition or declaration
> int nft_meta_get_init(const struct nft_ctx *ctx,
> ^~~~~~~
> include/net/netfilter/nft_meta.h:21:22: warning: 'struct nlattr' declared inside parameter list will not be visible outside of this definition or declaration
> const struct nlattr * const tb[]);
> ^~~~~~
> include/net/netfilter/nft_meta.h:20:22: warning: 'struct nft_expr' declared inside parameter list will not be visible outside of this definition or declaration
> const struct nft_expr *expr,
> ^~~~~~~~
> include/net/netfilter/nft_meta.h:19:36: warning: 'struct nft_ctx' declared inside parameter list will not be visible outside of this definition or declaration
> int nft_meta_set_init(const struct nft_ctx *ctx,
> ^~~~~~~
> include/net/netfilter/nft_meta.h:24:22: warning: 'struct nft_expr' declared inside parameter list will not be visible outside of this definition or declaration
> const struct nft_expr *expr);
> ^~~~~~~~
> include/net/netfilter/nft_meta.h:23:30: warning: 'struct sk_buff' declared inside parameter list will not be visible outside of this definition or declaration
> int nft_meta_get_dump(struct sk_buff *skb,
> ^~~~~~~
> include/net/netfilter/nft_meta.h:27:22: warning: 'struct nft_expr' declared inside parameter list will not be visible outside of this definition or declaration
> const struct nft_expr *expr);
> ^~~~~~~~
> include/net/netfilter/nft_meta.h:26:30: warning: 'struct sk_buff' declared inside parameter list will not be visible outside of this definition or declaration
> int nft_meta_set_dump(struct sk_buff *skb,
> ^~~~~~~
> include/net/netfilter/nft_meta.h:31:23: warning: 'struct nft_pktinfo' declared inside parameter list will not be visible outside of this definition or declaration
> const struct nft_pktinfo *pkt);
> ^~~~~~~~~~~
> include/net/netfilter/nft_meta.h:30:17: warning: 'struct nft_regs' declared inside parameter list will not be visible outside of this definition or declaration
> struct nft_regs *regs,
> ^~~~~~~~
> include/net/netfilter/nft_meta.h:29:37: warning: 'struct nft_expr' declared inside parameter list will not be visible outside of this definition or declaration
> void nft_meta_get_eval(const struct nft_expr *expr,
> ^~~~~~~~
> include/net/netfilter/nft_meta.h:35:23: warning: 'struct nft_pktinfo' declared inside parameter list will not be visible outside of this definition or declaration
> const struct nft_pktinfo *pkt);
> ^~~~~~~~~~~
> include/net/netfilter/nft_meta.h:34:17: warning: 'struct nft_regs' declared inside parameter list will not be visible outside of this definition or declaration
> struct nft_regs *regs,
> ^~~~~~~~
> include/net/netfilter/nft_meta.h:33:37: warning: 'struct nft_expr' declared inside parameter list will not be visible outside of this definition or declaration
> void nft_meta_set_eval(const struct nft_expr *expr,
> ^~~~~~~~
> include/net/netfilter/nft_meta.h:38:19: warning: 'struct nft_expr' declared inside parameter list will not be visible outside of this definition or declaration
> const struct nft_expr *expr);
> ^~~~~~~~
> include/net/netfilter/nft_meta.h:37:40: warning: 'struct nft_ctx' declared inside parameter list will not be visible outside of this definition or declaration
> void nft_meta_set_destroy(const struct nft_ctx *ctx,
> ^~~~~~~
> include/net/netfilter/nft_meta.h:42:19: warning: 'struct nft_data' declared inside parameter list will not be visible outside of this definition or declaration
> const struct nft_data **data);
> ^~~~~~~~
> include/net/netfilter/nft_meta.h:41:19: warning: 'struct nft_expr' declared inside parameter list will not be visible outside of this definition or declaration
> const struct nft_expr *expr,
> ^~~~~~~~
> include/net/netfilter/nft_meta.h:40:40: warning: 'struct nft_ctx' declared inside parameter list will not be visible outside of this definition or declaration
> int nft_meta_set_validate(const struct nft_ctx *ctx,
> ^~~~~~~
>
> Caused by commit
>
> 30e103fe24de ("netfilter: nft_meta: move bridge meta keys into nft_meta_bridge")
>
> interacting with commit
>
> 3a768d9f7ae5 ("kbuild: compile-test kernel headers to ensure they are self-contained")
>
> from the kbuild tree.
>
> I have applied the following patch for today.
>
> From: Stephen Rothwell <sfr@canb.auug.org.au>
> Date: Mon, 8 Jul 2019 13:34:42 +1000
> Subject: [PATCH] don't test build another netfilter header
>
> Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
> ---
> include/Kbuild | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/include/Kbuild b/include/Kbuild
> index 78434c59701f..cfd73c94d015 100644
> --- a/include/Kbuild
> +++ b/include/Kbuild
> @@ -900,6 +900,7 @@ header-test- += net/netfilter/nf_tables_core.h
> header-test- += net/netfilter/nf_tables_ipv4.h
> header-test- += net/netfilter/nf_tables_ipv6.h
> header-test- += net/netfilter/nft_fib.h
> +header-test- += net/netfilter/nft_meta.h
> header-test- += net/netfilter/nft_reject.h
> header-test- += net/netns/can.h
> header-test- += net/netns/generic.h
I reported this yesterday against the netflter-next tree, but now the
fix patch is needed in the merge of the net-next tree.
--
Cheers,
Stephen Rothwell
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
* linux-next: build failure after merge of the netfilter-next tree
@ 2018-07-18 1:50 Stephen Rothwell
0 siblings, 0 replies; 2+ messages in thread
From: Stephen Rothwell @ 2018-07-18 1:50 UTC (permalink / raw)
To: Pablo Neira Ayuso, NetFilter, David Miller, Networking
Cc: Linux-Next Mailing List, Linux Kernel Mailing List,
Máté Eckl
[-- Attachment #1: Type: text/plain, Size: 12543 bytes --]
Hi all,
After merging the netfilter-next tree, today's linux-next build (x86_64
allmodconfig) failed like this:
net/netfilter/nft_tproxy.c: In function 'nft_tproxy_eval_v4':
net/netfilter/nft_tproxy.c:48:48: warning: passing argument 3 of 'nf_tproxy_get_sock_v4' makes integer from pointer without a cast [-Wint-conversion]
sk = nf_tproxy_get_sock_v4(nft_net(pkt), skb, hp, iph->protocol,
^~
In file included from net/netfilter/nft_tproxy.c:6:0:
include/net/netfilter/nf_tproxy.h:75:1: note: expected 'u8 {aka const unsigned char}' but argument is of type 'struct udphdr *'
nf_tproxy_get_sock_v4(struct net *net, struct sk_buff *skb,
^~~~~~~~~~~~~~~~~~~~~
net/netfilter/nft_tproxy.c:50:20: warning: passing argument 8 of 'nf_tproxy_get_sock_v4' makes pointer from integer without a cast [-Wint-conversion]
hp->source, hp->dest,
^~
In file included from net/netfilter/nft_tproxy.c:6:0:
include/net/netfilter/nf_tproxy.h:75:1: note: expected 'const struct net_device *' but argument is of type '__be16 {aka short unsigned int}'
nf_tproxy_get_sock_v4(struct net *net, struct sk_buff *skb,
^~~~~~~~~~~~~~~~~~~~~
net/netfilter/nft_tproxy.c:51:8: error: incompatible type for argument 9 of 'nf_tproxy_get_sock_v4'
skb->dev, NF_TPROXY_LOOKUP_ESTABLISHED);
^~~
In file included from net/netfilter/nft_tproxy.c:6:0:
include/net/netfilter/nf_tproxy.h:75:1: note: expected 'const enum nf_tproxy_lookup_t' but argument is of type 'struct net_device *'
nf_tproxy_get_sock_v4(struct net *net, struct sk_buff *skb,
^~~~~~~~~~~~~~~~~~~~~
net/netfilter/nft_tproxy.c:48:7: error: too many arguments to function 'nf_tproxy_get_sock_v4'
sk = nf_tproxy_get_sock_v4(nft_net(pkt), skb, hp, iph->protocol,
^~~~~~~~~~~~~~~~~~~~~
In file included from net/netfilter/nft_tproxy.c:6:0:
include/net/netfilter/nf_tproxy.h:75:1: note: declared here
nf_tproxy_get_sock_v4(struct net *net, struct sk_buff *skb,
^~~~~~~~~~~~~~~~~~~~~
net/netfilter/nft_tproxy.c:69:49: warning: passing argument 3 of 'nf_tproxy_get_sock_v4' makes integer from pointer without a cast [-Wint-conversion]
sk = nf_tproxy_get_sock_v4(nft_net(pkt), skb, hp, iph->protocol,
^~
In file included from net/netfilter/nft_tproxy.c:6:0:
include/net/netfilter/nf_tproxy.h:75:1: note: expected 'u8 {aka const unsigned char}' but argument is of type 'struct udphdr *'
nf_tproxy_get_sock_v4(struct net *net, struct sk_buff *skb,
^~~~~~~~~~~~~~~~~~~~~
net/netfilter/nft_tproxy.c:71:21: warning: passing argument 8 of 'nf_tproxy_get_sock_v4' makes pointer from integer without a cast [-Wint-conversion]
hp->source, tport,
^~~~~
In file included from net/netfilter/nft_tproxy.c:6:0:
include/net/netfilter/nf_tproxy.h:75:1: note: expected 'const struct net_device *' but argument is of type '__be16 {aka short unsigned int}'
nf_tproxy_get_sock_v4(struct net *net, struct sk_buff *skb,
^~~~~~~~~~~~~~~~~~~~~
net/netfilter/nft_tproxy.c:72:9: error: incompatible type for argument 9 of 'nf_tproxy_get_sock_v4'
skb->dev, NF_TPROXY_LOOKUP_LISTENER);
^~~
In file included from net/netfilter/nft_tproxy.c:6:0:
include/net/netfilter/nf_tproxy.h:75:1: note: expected 'const enum nf_tproxy_lookup_t' but argument is of type 'struct net_device *'
nf_tproxy_get_sock_v4(struct net *net, struct sk_buff *skb,
^~~~~~~~~~~~~~~~~~~~~
net/netfilter/nft_tproxy.c:69:8: error: too many arguments to function 'nf_tproxy_get_sock_v4'
sk = nf_tproxy_get_sock_v4(nft_net(pkt), skb, hp, iph->protocol,
^~~~~~~~~~~~~~~~~~~~~
In file included from net/netfilter/nft_tproxy.c:6:0:
include/net/netfilter/nf_tproxy.h:75:1: note: declared here
nf_tproxy_get_sock_v4(struct net *net, struct sk_buff *skb,
^~~~~~~~~~~~~~~~~~~~~
net/netfilter/nft_tproxy.c: In function 'nft_tproxy_eval_v6':
net/netfilter/nft_tproxy.c:111:55: warning: passing argument 4 of 'nf_tproxy_get_sock_v6' makes integer from pointer without a cast [-Wint-conversion]
sk = nf_tproxy_get_sock_v6(nft_net(pkt), skb, thoff, hp, l4proto,
^~
In file included from net/netfilter/nft_tproxy.c:6:0:
include/net/netfilter/nf_tproxy.h:114:1: note: expected 'u8 {aka const unsigned char}' but argument is of type 'struct udphdr *'
nf_tproxy_get_sock_v6(struct net *net, struct sk_buff *skb, int thoff,
^~~~~~~~~~~~~~~~~~~~~
net/netfilter/nft_tproxy.c:111:59: warning: passing argument 5 of 'nf_tproxy_get_sock_v6' makes pointer from integer without a cast [-Wint-conversion]
sk = nf_tproxy_get_sock_v6(nft_net(pkt), skb, thoff, hp, l4proto,
^~~~~~~
In file included from net/netfilter/nft_tproxy.c:6:0:
include/net/netfilter/nf_tproxy.h:114:1: note: expected 'const struct in6_addr *' but argument is of type 'int'
nf_tproxy_get_sock_v6(struct net *net, struct sk_buff *skb, int thoff,
^~~~~~~~~~~~~~~~~~~~~
net/netfilter/nft_tproxy.c:112:21: warning: passing argument 7 of 'nf_tproxy_get_sock_v6' makes integer from pointer without a cast [-Wint-conversion]
&iph->saddr, &iph->daddr,
^
In file included from net/netfilter/nft_tproxy.c:6:0:
include/net/netfilter/nf_tproxy.h:114:1: note: expected '__be16 {aka const short unsigned int}' but argument is of type 'const struct in6_addr *'
nf_tproxy_get_sock_v6(struct net *net, struct sk_buff *skb, int thoff,
^~~~~~~~~~~~~~~~~~~~~
net/netfilter/nft_tproxy.c:113:20: warning: passing argument 9 of 'nf_tproxy_get_sock_v6' makes pointer from integer without a cast [-Wint-conversion]
hp->source, hp->dest,
^~
In file included from net/netfilter/nft_tproxy.c:6:0:
include/net/netfilter/nf_tproxy.h:114:1: note: expected 'const struct net_device *' but argument is of type '__be16 {aka short unsigned int}'
nf_tproxy_get_sock_v6(struct net *net, struct sk_buff *skb, int thoff,
^~~~~~~~~~~~~~~~~~~~~
net/netfilter/nft_tproxy.c:114:8: error: incompatible type for argument 10 of 'nf_tproxy_get_sock_v6'
nft_in(pkt), NF_TPROXY_LOOKUP_ESTABLISHED);
^~~~~~
In file included from net/netfilter/nft_tproxy.c:6:0:
include/net/netfilter/nf_tproxy.h:114:1: note: expected 'const enum nf_tproxy_lookup_t' but argument is of type 'const struct net_device *'
nf_tproxy_get_sock_v6(struct net *net, struct sk_buff *skb, int thoff,
^~~~~~~~~~~~~~~~~~~~~
net/netfilter/nft_tproxy.c:111:7: error: too many arguments to function 'nf_tproxy_get_sock_v6'
sk = nf_tproxy_get_sock_v6(nft_net(pkt), skb, thoff, hp, l4proto,
^~~~~~~~~~~~~~~~~~~~~
In file included from net/netfilter/nft_tproxy.c:6:0:
include/net/netfilter/nf_tproxy.h:114:1: note: declared here
nf_tproxy_get_sock_v6(struct net *net, struct sk_buff *skb, int thoff,
^~~~~~~~~~~~~~~~~~~~~
net/netfilter/nft_tproxy.c:137:56: warning: passing argument 4 of 'nf_tproxy_get_sock_v6' makes integer from pointer without a cast [-Wint-conversion]
sk = nf_tproxy_get_sock_v6(nft_net(pkt), skb, thoff, hp,
^~
In file included from net/netfilter/nft_tproxy.c:6:0:
include/net/netfilter/nf_tproxy.h:114:1: note: expected 'u8 {aka const unsigned char}' but argument is of type 'struct udphdr *'
nf_tproxy_get_sock_v6(struct net *net, struct sk_buff *skb, int thoff,
^~~~~~~~~~~~~~~~~~~~~
net/netfilter/nft_tproxy.c:138:9: warning: passing argument 5 of 'nf_tproxy_get_sock_v6' makes pointer from integer without a cast [-Wint-conversion]
l4proto, &iph->saddr, &taddr,
^~~~~~~
In file included from net/netfilter/nft_tproxy.c:6:0:
include/net/netfilter/nf_tproxy.h:114:1: note: expected 'const struct in6_addr *' but argument is of type 'int'
nf_tproxy_get_sock_v6(struct net *net, struct sk_buff *skb, int thoff,
^~~~~~~~~~~~~~~~~~~~~
net/netfilter/nft_tproxy.c:138:31: warning: passing argument 7 of 'nf_tproxy_get_sock_v6' makes integer from pointer without a cast [-Wint-conversion]
l4proto, &iph->saddr, &taddr,
^
In file included from net/netfilter/nft_tproxy.c:6:0:
include/net/netfilter/nf_tproxy.h:114:1: note: expected '__be16 {aka const short unsigned int}' but argument is of type 'struct in6_addr *'
nf_tproxy_get_sock_v6(struct net *net, struct sk_buff *skb, int thoff,
^~~~~~~~~~~~~~~~~~~~~
net/netfilter/nft_tproxy.c:139:21: warning: passing argument 9 of 'nf_tproxy_get_sock_v6' makes pointer from integer without a cast [-Wint-conversion]
hp->source, tport,
^~~~~
In file included from net/netfilter/nft_tproxy.c:6:0:
include/net/netfilter/nf_tproxy.h:114:1: note: expected 'const struct net_device *' but argument is of type '__be16 {aka short unsigned int}'
nf_tproxy_get_sock_v6(struct net *net, struct sk_buff *skb, int thoff,
^~~~~~~~~~~~~~~~~~~~~
net/netfilter/nft_tproxy.c:140:9: error: incompatible type for argument 10 of 'nf_tproxy_get_sock_v6'
nft_in(pkt), NF_TPROXY_LOOKUP_LISTENER);
^~~~~~
In file included from net/netfilter/nft_tproxy.c:6:0:
include/net/netfilter/nf_tproxy.h:114:1: note: expected 'const enum nf_tproxy_lookup_t' but argument is of type 'const struct net_device *'
nf_tproxy_get_sock_v6(struct net *net, struct sk_buff *skb, int thoff,
^~~~~~~~~~~~~~~~~~~~~
net/netfilter/nft_tproxy.c:137:8: error: too many arguments to function 'nf_tproxy_get_sock_v6'
sk = nf_tproxy_get_sock_v6(nft_net(pkt), skb, thoff, hp,
^~~~~~~~~~~~~~~~~~~~~
In file included from net/netfilter/nft_tproxy.c:6:0:
include/net/netfilter/nf_tproxy.h:114:1: note: declared here
nf_tproxy_get_sock_v6(struct net *net, struct sk_buff *skb, int thoff,
^~~~~~~~~~~~~~~~~~~~~
Caused by commit
08668354bdbf ("netfilter: Add native tproxy support for nf_tables")
interacting with commit
5711b4e89319 ("netfilter: nf_tproxy: fix possible non-linear access to transport header")
from the net tree.
I have applied the following merge fix up patch:
From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Wed, 18 Jul 2018 11:41:50 +1000
Subject: [PATCH] netfilter: nf_tproxy: merge fix ups for API changes
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
net/netfilter/nft_tproxy.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/net/netfilter/nft_tproxy.c b/net/netfilter/nft_tproxy.c
index 5ca797ea335c..23ea9396a693 100644
--- a/net/netfilter/nft_tproxy.c
+++ b/net/netfilter/nft_tproxy.c
@@ -45,7 +45,7 @@ static void nft_tproxy_eval_v4(const struct nft_expr *expr,
* happens if the redirect already happened and the current packet
* belongs to an already established connection
*/
- sk = nf_tproxy_get_sock_v4(nft_net(pkt), skb, hp, iph->protocol,
+ sk = nf_tproxy_get_sock_v4(nft_net(pkt), skb, iph->protocol,
iph->saddr, iph->daddr,
hp->source, hp->dest,
skb->dev, NF_TPROXY_LOOKUP_ESTABLISHED);
@@ -66,7 +66,7 @@ static void nft_tproxy_eval_v4(const struct nft_expr *expr,
else if (!sk)
/* no, there's no established connection, check if
* there's a listener on the redirected addr/port */
- sk = nf_tproxy_get_sock_v4(nft_net(pkt), skb, hp, iph->protocol,
+ sk = nf_tproxy_get_sock_v4(nft_net(pkt), skb, iph->protocol,
iph->saddr, taddr,
hp->source, tport,
skb->dev, NF_TPROXY_LOOKUP_LISTENER);
@@ -108,7 +108,7 @@ static void nft_tproxy_eval_v6(const struct nft_expr *expr,
* happens if the redirect already happened and the current packet
* belongs to an already established connection.
*/
- sk = nf_tproxy_get_sock_v6(nft_net(pkt), skb, thoff, hp, l4proto,
+ sk = nf_tproxy_get_sock_v6(nft_net(pkt), skb, thoff, l4proto,
&iph->saddr, &iph->daddr,
hp->source, hp->dest,
nft_in(pkt), NF_TPROXY_LOOKUP_ESTABLISHED);
@@ -134,7 +134,7 @@ static void nft_tproxy_eval_v6(const struct nft_expr *expr,
else if (!sk)
/* no there's no established connection, check if
* there's a listener on the redirected addr/port */
- sk = nf_tproxy_get_sock_v6(nft_net(pkt), skb, thoff, hp,
+ sk = nf_tproxy_get_sock_v6(nft_net(pkt), skb, thoff,
l4proto, &iph->saddr, &taddr,
hp->source, tport,
nft_in(pkt), NF_TPROXY_LOOKUP_LISTENER);
--
2.18.0
--
Cheers,
Stephen Rothwell
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2019-07-09 3:59 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20190708133958.6a30f5cb@canb.auug.org.au>
2019-07-09 3:59 ` linux-next: build failure after merge of the netfilter-next tree Stephen Rothwell
2018-07-18 1:50 Stephen Rothwell
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox