[netfilter-nf-next:testing 21/24] net/netfilter/nfnetlink.c:711:18: error: 'struct net' has no member named 'ct'

From: kernel test robot
Date: Mon Mar 21 2022 - 21:47:28 EST


tree: git://git.kernel.org/pub/scm/linux/kernel/git/netfilter/nf-next.git testing
head: 0481bbb83971b25a71fba81269b3bc0a392d24e3
commit: 75a944cf2fe90182d986638a7422238b310f1ca4 [21/24] netfilter: nfnetlink: allow to detect if ctnetlink listeners exist
config: i386-randconfig-a005 (https://download.01.org/0day-ci/archive/20220322/202203220927.XDcSImyg-lkp@xxxxxxxxx/config)
compiler: gcc-9 (Ubuntu 9.4.0-1ubuntu1~20.04) 9.4.0
reproduce (this is a W=1 build):
# https://git.kernel.org/pub/scm/linux/kernel/git/netfilter/nf-next.git/commit/?id=75a944cf2fe90182d986638a7422238b310f1ca4
git remote add netfilter-nf-next git://git.kernel.org/pub/scm/linux/kernel/git/netfilter/nf-next.git
git fetch --no-tags netfilter-nf-next testing
git checkout 75a944cf2fe90182d986638a7422238b310f1ca4
# save the config file to linux build tree
mkdir build_dir
make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash net/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

In file included from <command-line>:
net/netfilter/nfnetlink.c: In function 'nfnetlink_bind':
>> net/netfilter/nfnetlink.c:711:18: error: 'struct net' has no member named 'ct'
711 | WRITE_ONCE(net->ct.ctnetlink_has_listener, true);
| ^~
include/linux/compiler_types.h:329:9: note: in definition of macro '__compiletime_assert'
329 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:349:2: note: in expansion of macro '_compiletime_assert'
349 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
| ^~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
| ^~~~~~~~~~~~~
include/asm-generic/rwonce.h:60:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
60 | compiletime_assert_rwonce_type(x); \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
net/netfilter/nfnetlink.c:711:4: note: in expansion of macro 'WRITE_ONCE'
711 | WRITE_ONCE(net->ct.ctnetlink_has_listener, true);
| ^~~~~~~~~~
>> net/netfilter/nfnetlink.c:711:18: error: 'struct net' has no member named 'ct'
711 | WRITE_ONCE(net->ct.ctnetlink_has_listener, true);
| ^~
include/linux/compiler_types.h:329:9: note: in definition of macro '__compiletime_assert'
329 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:349:2: note: in expansion of macro '_compiletime_assert'
349 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
| ^~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
| ^~~~~~~~~~~~~
include/asm-generic/rwonce.h:60:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
60 | compiletime_assert_rwonce_type(x); \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
net/netfilter/nfnetlink.c:711:4: note: in expansion of macro 'WRITE_ONCE'
711 | WRITE_ONCE(net->ct.ctnetlink_has_listener, true);
| ^~~~~~~~~~
>> net/netfilter/nfnetlink.c:711:18: error: 'struct net' has no member named 'ct'
711 | WRITE_ONCE(net->ct.ctnetlink_has_listener, true);
| ^~
include/linux/compiler_types.h:329:9: note: in definition of macro '__compiletime_assert'
329 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:349:2: note: in expansion of macro '_compiletime_assert'
349 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
| ^~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
| ^~~~~~~~~~~~~
include/asm-generic/rwonce.h:60:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
60 | compiletime_assert_rwonce_type(x); \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
net/netfilter/nfnetlink.c:711:4: note: in expansion of macro 'WRITE_ONCE'
711 | WRITE_ONCE(net->ct.ctnetlink_has_listener, true);
| ^~~~~~~~~~
>> net/netfilter/nfnetlink.c:711:18: error: 'struct net' has no member named 'ct'
711 | WRITE_ONCE(net->ct.ctnetlink_has_listener, true);
| ^~
include/linux/compiler_types.h:329:9: note: in definition of macro '__compiletime_assert'
329 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:349:2: note: in expansion of macro '_compiletime_assert'
349 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
| ^~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
| ^~~~~~~~~~~~~
include/asm-generic/rwonce.h:60:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
60 | compiletime_assert_rwonce_type(x); \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
net/netfilter/nfnetlink.c:711:4: note: in expansion of macro 'WRITE_ONCE'
711 | WRITE_ONCE(net->ct.ctnetlink_has_listener, true);
| ^~~~~~~~~~
>> net/netfilter/nfnetlink.c:711:18: error: 'struct net' has no member named 'ct'
711 | WRITE_ONCE(net->ct.ctnetlink_has_listener, true);
| ^~
include/linux/compiler_types.h:329:9: note: in definition of macro '__compiletime_assert'
329 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:349:2: note: in expansion of macro '_compiletime_assert'
349 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
| ^~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:60:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
60 | compiletime_assert_rwonce_type(x); \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
net/netfilter/nfnetlink.c:711:4: note: in expansion of macro 'WRITE_ONCE'
711 | WRITE_ONCE(net->ct.ctnetlink_has_listener, true);
| ^~~~~~~~~~
In file included from ./arch/x86/include/generated/asm/rwonce.h:1,
from include/linux/compiler.h:255,
from include/linux/build_bug.h:5,
from include/linux/container_of.h:5,
from include/linux/list.h:5,
from include/linux/module.h:12,
from net/netfilter/nfnetlink.c:17:
>> net/netfilter/nfnetlink.c:711:18: error: 'struct net' has no member named 'ct'
711 | WRITE_ONCE(net->ct.ctnetlink_has_listener, true);
| ^~
include/asm-generic/rwonce.h:55:20: note: in definition of macro '__WRITE_ONCE'
55 | *(volatile typeof(x) *)&(x) = (val); \
| ^
net/netfilter/nfnetlink.c:711:4: note: in expansion of macro 'WRITE_ONCE'
711 | WRITE_ONCE(net->ct.ctnetlink_has_listener, true);
| ^~~~~~~~~~
>> net/netfilter/nfnetlink.c:711:18: error: 'struct net' has no member named 'ct'
711 | WRITE_ONCE(net->ct.ctnetlink_has_listener, true);
| ^~
include/asm-generic/rwonce.h:55:27: note: in definition of macro '__WRITE_ONCE'
55 | *(volatile typeof(x) *)&(x) = (val); \
| ^
net/netfilter/nfnetlink.c:711:4: note: in expansion of macro 'WRITE_ONCE'
711 | WRITE_ONCE(net->ct.ctnetlink_has_listener, true);
| ^~~~~~~~~~


vim +711 net/netfilter/nfnetlink.c

698
699 if (type == NFNL_SUBSYS_CTNETLINK) {
700 struct nfnl_net *nfnlnet = nfnl_pernet(net);
701
702 nfnl_lock(NFNL_SUBSYS_CTNETLINK);
703
704 if (WARN_ON_ONCE(nfnlnet->ctnetlink_listeners == UINT_MAX)) {
705 nfnl_unlock(NFNL_SUBSYS_CTNETLINK);
706 return -EOVERFLOW;
707 }
708
709 nfnlnet->ctnetlink_listeners++;
710 if (nfnlnet->ctnetlink_listeners == 1)
> 711 WRITE_ONCE(net->ct.ctnetlink_has_listener, true);
712 nfnl_unlock(NFNL_SUBSYS_CTNETLINK);
713 }
714
715 return 0;
716 }
717

--
0-DAY CI Kernel Test Service
https://01.org/lkp