diff mbox series

linux-next: build failure after merge of the net-next tree

Message ID 20210412150416.4465b518@canb.auug.org.au
State Awaiting Upstream
Delegated to: Pablo Neira
Headers show
Series linux-next: build failure after merge of the net-next tree | expand

Commit Message

Stephen Rothwell April 12, 2021, 5:04 a.m. UTC
Hi all,

After merging the net-next tree, today's linux-next build (x86_64
allmodconfig) failed like this:

In file included from include/asm-generic/bug.h:20,
                 from arch/x86/include/asm/bug.h:93,
                 from include/linux/bug.h:5,
                 from include/linux/mmdebug.h:5,
                 from include/linux/gfp.h:5,
                 from include/linux/umh.h:4,
                 from include/linux/kmod.h:9,
                 from net/bridge/netfilter/ebtables.c:14:
net/bridge/netfilter/ebtables.c: In function '__ebt_find_table':
net/bridge/netfilter/ebtables.c:1248:33: error: 'struct netns_xt' has no member named 'tables'
 1248 |  list_for_each_entry(t, &net->xt.tables[NFPROTO_BRIDGE], list) {
      |                                 ^
include/linux/kernel.h:708:26: note: in definition of macro 'container_of'
  708 |  void *__mptr = (void *)(ptr);     \
      |                          ^~~
include/linux/list.h:522:2: note: in expansion of macro 'list_entry'
  522 |  list_entry((ptr)->next, type, member)
      |  ^~~~~~~~~~
include/linux/list.h:628:13: note: in expansion of macro 'list_first_entry'
  628 |  for (pos = list_first_entry(head, typeof(*pos), member); \
      |             ^~~~~~~~~~~~~~~~
net/bridge/netfilter/ebtables.c:1248:2: note: in expansion of macro 'list_for_each_entry'
 1248 |  list_for_each_entry(t, &net->xt.tables[NFPROTO_BRIDGE], list) {
      |  ^~~~~~~~~~~~~~~~~~~
In file included from <command-line>:
net/bridge/netfilter/ebtables.c:1248:33: error: 'struct netns_xt' has no member named 'tables'
 1248 |  list_for_each_entry(t, &net->xt.tables[NFPROTO_BRIDGE], list) {
      |                                 ^
include/linux/compiler_types.h:300:9: note: in definition of macro '__compiletime_assert'
  300 |   if (!(condition))     \
      |         ^~~~~~~~~
include/linux/compiler_types.h:320:2: note: in expansion of macro '_compiletime_assert'
  320 |  _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
      |  ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
   39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
      |                                     ^~~~~~~~~~~~~~~~~~
include/linux/kernel.h:709:2: note: in expansion of macro 'BUILD_BUG_ON_MSG'
  709 |  BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
      |  ^~~~~~~~~~~~~~~~
include/linux/kernel.h:709:20: note: in expansion of macro '__same_type'
  709 |  BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
      |                    ^~~~~~~~~~~
include/linux/list.h:511:2: note: in expansion of macro 'container_of'
  511 |  container_of(ptr, type, member)
      |  ^~~~~~~~~~~~
include/linux/list.h:522:2: note: in expansion of macro 'list_entry'
  522 |  list_entry((ptr)->next, type, member)
      |  ^~~~~~~~~~
include/linux/list.h:628:13: note: in expansion of macro 'list_first_entry'
  628 |  for (pos = list_first_entry(head, typeof(*pos), member); \
      |             ^~~~~~~~~~~~~~~~
net/bridge/netfilter/ebtables.c:1248:2: note: in expansion of macro 'list_for_each_entry'
 1248 |  list_for_each_entry(t, &net->xt.tables[NFPROTO_BRIDGE], list) {
      |  ^~~~~~~~~~~~~~~~~~~
net/bridge/netfilter/ebtables.c:1248:33: error: 'struct netns_xt' has no member named 'tables'
 1248 |  list_for_each_entry(t, &net->xt.tables[NFPROTO_BRIDGE], list) {
      |                                 ^
include/linux/compiler_types.h:300:9: note: in definition of macro '__compiletime_assert'
  300 |   if (!(condition))     \
      |         ^~~~~~~~~
include/linux/compiler_types.h:320:2: note: in expansion of macro '_compiletime_assert'
  320 |  _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
      |  ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
   39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
      |                                     ^~~~~~~~~~~~~~~~~~
include/linux/kernel.h:709:2: note: in expansion of macro 'BUILD_BUG_ON_MSG'
  709 |  BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
      |  ^~~~~~~~~~~~~~~~
include/linux/kernel.h:710:6: note: in expansion of macro '__same_type'
  710 |     !__same_type(*(ptr), void),   \
      |      ^~~~~~~~~~~
include/linux/list.h:511:2: note: in expansion of macro 'container_of'
  511 |  container_of(ptr, type, member)
      |  ^~~~~~~~~~~~
include/linux/list.h:522:2: note: in expansion of macro 'list_entry'
  522 |  list_entry((ptr)->next, type, member)
      |  ^~~~~~~~~~
include/linux/list.h:628:13: note: in expansion of macro 'list_first_entry'
  628 |  for (pos = list_first_entry(head, typeof(*pos), member); \
      |             ^~~~~~~~~~~~~~~~
net/bridge/netfilter/ebtables.c:1248:2: note: in expansion of macro 'list_for_each_entry'
 1248 |  list_for_each_entry(t, &net->xt.tables[NFPROTO_BRIDGE], list) {
      |  ^~~~~~~~~~~~~~~~~~~
In file included from include/linux/preempt.h:11,
                 from include/linux/spinlock.h:51,
                 from include/linux/mmzone.h:8,
                 from include/linux/gfp.h:6,
                 from include/linux/umh.h:4,
                 from include/linux/kmod.h:9,
                 from net/bridge/netfilter/ebtables.c:14:
net/bridge/netfilter/ebtables.c:1248:33: error: 'struct netns_xt' has no member named 'tables'
 1248 |  list_for_each_entry(t, &net->xt.tables[NFPROTO_BRIDGE], list) {
      |                                 ^
include/linux/list.h:619:20: note: in definition of macro 'list_entry_is_head'
  619 |  (&pos->member == (head))
      |                    ^~~~
net/bridge/netfilter/ebtables.c:1248:2: note: in expansion of macro 'list_for_each_entry'
 1248 |  list_for_each_entry(t, &net->xt.tables[NFPROTO_BRIDGE], list) {
      |  ^~~~~~~~~~~~~~~~~~~

Caused by commit

  5b53951cfc85 ("netfilter: ebtables: use net_generic infra")

interacting with commit

  7ee3c61dcd28 ("netfilter: bridge: add pre_exit hooks for ebtable unregistration")

from the netfilter tree.

I have applied the following merge fix patch for today:

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Mon, 12 Apr 2021 14:58:20 +1000
Subject: [PATCH] merger fix for "netfilter: bridge: add pre_exit hooks for
 ebtable unregistration"

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 net/bridge/netfilter/ebtables.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Florian Westphal April 12, 2021, 9:02 a.m. UTC | #1
Stephen Rothwell <sfr@canb.auug.org.au> wrote:
> net/bridge/netfilter/ebtables.c:1248:33: error: 'struct netns_xt' has no member named 'tables'
>  1248 |  list_for_each_entry(t, &net->xt.tables[NFPROTO_BRIDGE], list) {
>       |                                 ^
> include/linux/list.h:619:20: note: in definition of macro 'list_entry_is_head'
>   619 |  (&pos->member == (head))
>       |                    ^~~~
> net/bridge/netfilter/ebtables.c:1248:2: note: in expansion of macro 'list_for_each_entry'
>  1248 |  list_for_each_entry(t, &net->xt.tables[NFPROTO_BRIDGE], list) {
>       |  ^~~~~~~~~~~~~~~~~~~
> 
> Caused by commit
> 
>   5b53951cfc85 ("netfilter: ebtables: use net_generic infra")
> 
> interacting with commit
> 
>   7ee3c61dcd28 ("netfilter: bridge: add pre_exit hooks for ebtable unregistration")

Right, the fixup is correct.
Pablo Neira Ayuso April 12, 2021, 1:25 p.m. UTC | #2
On Mon, Apr 12, 2021 at 03:04:16PM +1000, Stephen Rothwell wrote:
> Hi all,
> 
> After merging the net-next tree, today's linux-next build (x86_64
> allmodconfig) failed like this:
> 
> In file included from include/asm-generic/bug.h:20,
>                  from arch/x86/include/asm/bug.h:93,
>                  from include/linux/bug.h:5,
>                  from include/linux/mmdebug.h:5,
>                  from include/linux/gfp.h:5,
>                  from include/linux/umh.h:4,
>                  from include/linux/kmod.h:9,
>                  from net/bridge/netfilter/ebtables.c:14:
> net/bridge/netfilter/ebtables.c: In function '__ebt_find_table':
> net/bridge/netfilter/ebtables.c:1248:33: error: 'struct netns_xt' has no member named 'tables'
>  1248 |  list_for_each_entry(t, &net->xt.tables[NFPROTO_BRIDGE], list) {
>       |                                 ^
> include/linux/kernel.h:708:26: note: in definition of macro 'container_of'
>   708 |  void *__mptr = (void *)(ptr);     \
>       |                          ^~~
> include/linux/list.h:522:2: note: in expansion of macro 'list_entry'
>   522 |  list_entry((ptr)->next, type, member)
>       |  ^~~~~~~~~~
> include/linux/list.h:628:13: note: in expansion of macro 'list_first_entry'
>   628 |  for (pos = list_first_entry(head, typeof(*pos), member); \
>       |             ^~~~~~~~~~~~~~~~
> net/bridge/netfilter/ebtables.c:1248:2: note: in expansion of macro 'list_for_each_entry'
>  1248 |  list_for_each_entry(t, &net->xt.tables[NFPROTO_BRIDGE], list) {
>       |  ^~~~~~~~~~~~~~~~~~~
> In file included from <command-line>:
> net/bridge/netfilter/ebtables.c:1248:33: error: 'struct netns_xt' has no member named 'tables'
>  1248 |  list_for_each_entry(t, &net->xt.tables[NFPROTO_BRIDGE], list) {
>       |                                 ^
> include/linux/compiler_types.h:300:9: note: in definition of macro '__compiletime_assert'
>   300 |   if (!(condition))     \
>       |         ^~~~~~~~~
> include/linux/compiler_types.h:320:2: note: in expansion of macro '_compiletime_assert'
>   320 |  _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
>       |  ^~~~~~~~~~~~~~~~~~~
> include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
>    39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
>       |                                     ^~~~~~~~~~~~~~~~~~
> include/linux/kernel.h:709:2: note: in expansion of macro 'BUILD_BUG_ON_MSG'
>   709 |  BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
>       |  ^~~~~~~~~~~~~~~~
> include/linux/kernel.h:709:20: note: in expansion of macro '__same_type'
>   709 |  BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
>       |                    ^~~~~~~~~~~
> include/linux/list.h:511:2: note: in expansion of macro 'container_of'
>   511 |  container_of(ptr, type, member)
>       |  ^~~~~~~~~~~~
> include/linux/list.h:522:2: note: in expansion of macro 'list_entry'
>   522 |  list_entry((ptr)->next, type, member)
>       |  ^~~~~~~~~~
> include/linux/list.h:628:13: note: in expansion of macro 'list_first_entry'
>   628 |  for (pos = list_first_entry(head, typeof(*pos), member); \
>       |             ^~~~~~~~~~~~~~~~
> net/bridge/netfilter/ebtables.c:1248:2: note: in expansion of macro 'list_for_each_entry'
>  1248 |  list_for_each_entry(t, &net->xt.tables[NFPROTO_BRIDGE], list) {
>       |  ^~~~~~~~~~~~~~~~~~~
> net/bridge/netfilter/ebtables.c:1248:33: error: 'struct netns_xt' has no member named 'tables'
>  1248 |  list_for_each_entry(t, &net->xt.tables[NFPROTO_BRIDGE], list) {
>       |                                 ^
> include/linux/compiler_types.h:300:9: note: in definition of macro '__compiletime_assert'
>   300 |   if (!(condition))     \
>       |         ^~~~~~~~~
> include/linux/compiler_types.h:320:2: note: in expansion of macro '_compiletime_assert'
>   320 |  _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
>       |  ^~~~~~~~~~~~~~~~~~~
> include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
>    39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
>       |                                     ^~~~~~~~~~~~~~~~~~
> include/linux/kernel.h:709:2: note: in expansion of macro 'BUILD_BUG_ON_MSG'
>   709 |  BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
>       |  ^~~~~~~~~~~~~~~~
> include/linux/kernel.h:710:6: note: in expansion of macro '__same_type'
>   710 |     !__same_type(*(ptr), void),   \
>       |      ^~~~~~~~~~~
> include/linux/list.h:511:2: note: in expansion of macro 'container_of'
>   511 |  container_of(ptr, type, member)
>       |  ^~~~~~~~~~~~
> include/linux/list.h:522:2: note: in expansion of macro 'list_entry'
>   522 |  list_entry((ptr)->next, type, member)
>       |  ^~~~~~~~~~
> include/linux/list.h:628:13: note: in expansion of macro 'list_first_entry'
>   628 |  for (pos = list_first_entry(head, typeof(*pos), member); \
>       |             ^~~~~~~~~~~~~~~~
> net/bridge/netfilter/ebtables.c:1248:2: note: in expansion of macro 'list_for_each_entry'
>  1248 |  list_for_each_entry(t, &net->xt.tables[NFPROTO_BRIDGE], list) {
>       |  ^~~~~~~~~~~~~~~~~~~
> In file included from include/linux/preempt.h:11,
>                  from include/linux/spinlock.h:51,
>                  from include/linux/mmzone.h:8,
>                  from include/linux/gfp.h:6,
>                  from include/linux/umh.h:4,
>                  from include/linux/kmod.h:9,
>                  from net/bridge/netfilter/ebtables.c:14:
> net/bridge/netfilter/ebtables.c:1248:33: error: 'struct netns_xt' has no member named 'tables'
>  1248 |  list_for_each_entry(t, &net->xt.tables[NFPROTO_BRIDGE], list) {
>       |                                 ^
> include/linux/list.h:619:20: note: in definition of macro 'list_entry_is_head'
>   619 |  (&pos->member == (head))
>       |                    ^~~~
> net/bridge/netfilter/ebtables.c:1248:2: note: in expansion of macro 'list_for_each_entry'
>  1248 |  list_for_each_entry(t, &net->xt.tables[NFPROTO_BRIDGE], list) {
>       |  ^~~~~~~~~~~~~~~~~~~
> 
> Caused by commit
> 
>   5b53951cfc85 ("netfilter: ebtables: use net_generic infra")
> 
> interacting with commit
> 
>   7ee3c61dcd28 ("netfilter: bridge: add pre_exit hooks for ebtable unregistration")
> 
> from the netfilter tree.
> 
> I have applied the following merge fix patch for today:
> 
> From: Stephen Rothwell <sfr@canb.auug.org.au>
> Date: Mon, 12 Apr 2021 14:58:20 +1000
> Subject: [PATCH] merger fix for "netfilter: bridge: add pre_exit hooks for
>  ebtable unregistration"

Thanks.

I'll include this merge conflict in my next pull request.
diff mbox series

Patch

diff --git a/net/bridge/netfilter/ebtables.c b/net/bridge/netfilter/ebtables.c
index bbc46149bbb2..96d789c8d1c7 100644
--- a/net/bridge/netfilter/ebtables.c
+++ b/net/bridge/netfilter/ebtables.c
@@ -1241,11 +1241,12 @@  int ebt_register_table(struct net *net, const struct ebt_table *input_table,
 
 static struct ebt_table *__ebt_find_table(struct net *net, const char *name)
 {
+	struct ebt_pernet *ebt_net = net_generic(net, ebt_pernet_id);
 	struct ebt_table *t;
 
 	mutex_lock(&ebt_mutex);
 
-	list_for_each_entry(t, &net->xt.tables[NFPROTO_BRIDGE], list) {
+	list_for_each_entry(t, &ebt_net->tables, list) {
 		if (strcmp(t->name, name) == 0) {
 			mutex_unlock(&ebt_mutex);
 			return t;