lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:   Sun, 17 Sep 2017 11:32:33 +0800
From:   kbuild test robot <fengguang.wu@...el.com>
To:     Florian Westphal <fw@...len.de>
Cc:     kbuild-all@...org, linux-kernel@...r.kernel.org,
        Pablo Neira Ayuso <pablo@...filter.org>
Subject: net//netfilter/nf_nat_core.c:810:2: note: in expansion of macro 'if'

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   2bd6bf03f4c1c59381d62c61d03f6cc3fe71f66e
commit: 8073e960a03bf7b5d5ebfc5ff18ac475e1688f46 netfilter: nat: use keyed locks
date:   8 days ago
config: x86_64-randconfig-s4-09170918 (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
        git checkout 8073e960a03bf7b5d5ebfc5ff18ac475e1688f46
        # save the attached .config to linux build tree
        make ARCH=x86_64 

All warnings (new ones prefixed by >>):

   In file included from include/linux/list.h:8:0,
                    from include/linux/module.h:9,
                    from net//netfilter/nf_nat_core.c:11:
   net//netfilter/nf_nat_core.c: In function 'nf_nat_setup_info':
   include/linux/kernel.h:60:38: warning: division by zero [-Wdiv-by-zero]
    #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
                                         ^
   net//netfilter/nf_nat_core.c:432:34: note: in expansion of macro 'ARRAY_SIZE'
      lock = &nf_nat_locks[srchash % ARRAY_SIZE(nf_nat_locks)];
                                     ^~~~~~~~~~
   net//netfilter/nf_nat_core.c: In function '__nf_nat_cleanup_conntrack':
   include/linux/kernel.h:60:38: warning: division by zero [-Wdiv-by-zero]
    #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
                                         ^
   net//netfilter/nf_nat_core.c:535:33: note: in expansion of macro 'ARRAY_SIZE'
     spin_lock_bh(&nf_nat_locks[h % ARRAY_SIZE(nf_nat_locks)]);
                                    ^~~~~~~~~~
   include/linux/kernel.h:60:38: warning: division by zero [-Wdiv-by-zero]
    #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
                                         ^
   net//netfilter/nf_nat_core.c:537:35: note: in expansion of macro 'ARRAY_SIZE'
     spin_unlock_bh(&nf_nat_locks[h % ARRAY_SIZE(nf_nat_locks)]);
                                      ^~~~~~~~~~
   In file included from include/uapi/linux/stddef.h:1:0,
                    from include/linux/stddef.h:4,
                    from include/uapi/linux/posix_types.h:4,
                    from include/uapi/linux/types.h:13,
                    from include/linux/types.h:5,
                    from include/linux/list.h:4,
                    from include/linux/module.h:9,
                    from net//netfilter/nf_nat_core.c:11:
   net//netfilter/nf_nat_core.c: In function 'nf_nat_init':
   include/linux/kernel.h:60:38: warning: division by zero [-Wdiv-by-zero]
    #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
                                         ^
   include/linux/compiler.h:156:30: note: in definition of macro '__trace_if'
     if (__builtin_constant_p(!!(cond)) ? !!(cond) :   \
                                 ^~~~
>> net//netfilter/nf_nat_core.c:810:2: note: in expansion of macro 'if'
     if (nf_nat_htable_size < ARRAY_SIZE(nf_nat_locks))
     ^~
   net//netfilter/nf_nat_core.c:810:27: note: in expansion of macro 'ARRAY_SIZE'
     if (nf_nat_htable_size < ARRAY_SIZE(nf_nat_locks))
                              ^~~~~~~~~~
   include/linux/kernel.h:60:38: warning: division by zero [-Wdiv-by-zero]
    #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
                                         ^
   include/linux/compiler.h:156:42: note: in definition of macro '__trace_if'
     if (__builtin_constant_p(!!(cond)) ? !!(cond) :   \
                                             ^~~~
>> net//netfilter/nf_nat_core.c:810:2: note: in expansion of macro 'if'
     if (nf_nat_htable_size < ARRAY_SIZE(nf_nat_locks))
     ^~
   net//netfilter/nf_nat_core.c:810:27: note: in expansion of macro 'ARRAY_SIZE'
     if (nf_nat_htable_size < ARRAY_SIZE(nf_nat_locks))
                              ^~~~~~~~~~
   include/linux/kernel.h:60:38: warning: division by zero [-Wdiv-by-zero]
    #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
                                         ^
   include/linux/compiler.h:167:16: note: in definition of macro '__trace_if'
      ______r = !!(cond);     \
                   ^~~~
>> net//netfilter/nf_nat_core.c:810:2: note: in expansion of macro 'if'
     if (nf_nat_htable_size < ARRAY_SIZE(nf_nat_locks))
     ^~
   net//netfilter/nf_nat_core.c:810:27: note: in expansion of macro 'ARRAY_SIZE'
     if (nf_nat_htable_size < ARRAY_SIZE(nf_nat_locks))
                              ^~~~~~~~~~
   In file included from include/linux/list.h:8:0,
                    from include/linux/module.h:9,
                    from net//netfilter/nf_nat_core.c:11:
   include/linux/kernel.h:60:38: warning: division by zero [-Wdiv-by-zero]
    #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
                                         ^
   net//netfilter/nf_nat_core.c:811:24: note: in expansion of macro 'ARRAY_SIZE'
      nf_nat_htable_size = ARRAY_SIZE(nf_nat_locks);
                           ^~~~~~~~~~
   include/linux/kernel.h:60:38: warning: division by zero [-Wdiv-by-zero]
    #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
                                         ^
   net//netfilter/nf_nat_core.c:824:18: note: in expansion of macro 'ARRAY_SIZE'
     for (i = 0; i < ARRAY_SIZE(nf_nat_locks); i++)
                     ^~~~~~~~~~
   In file included from include/uapi/linux/stddef.h:1:0,
                    from include/linux/stddef.h:4,
                    from include/uapi/linux/posix_types.h:4,
                    from include/uapi/linux/types.h:13,
                    from include/linux/types.h:5,
                    from include/linux/list.h:4,
                    from include/linux/module.h:9,
                    from net//netfilter/nf_nat_core.c:11:
   net//netfilter/nf_nat_core.c: At top level:
   include/linux/compiler.h:162:4: warning: '______f' is static but declared in inline function 'strcpy' which is not static
       ______f = {     \
       ^
   include/linux/compiler.h:154:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
   include/linux/string.h:390:2: note: in expansion of macro 'if'
     if (p_size == (size_t)-1 && q_size == (size_t)-1)
     ^~
   include/linux/compiler.h:162:4: warning: '______f' is static but declared in inline function 'kmemdup' which is not static
       ______f = {     \
       ^
   include/linux/compiler.h:154:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
   include/linux/string.h:380:2: note: in expansion of macro 'if'
     if (p_size < size)
     ^~
   include/linux/compiler.h:162:4: warning: '______f' is static but declared in inline function 'kmemdup' which is not static
       ______f = {     \
       ^
   include/linux/compiler.h:154:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
   include/linux/string.h:378:2: note: in expansion of macro 'if'
     if (__builtin_constant_p(size) && p_size < size)
     ^~
   include/linux/compiler.h:162:4: warning: '______f' is static but declared in inline function 'memchr_inv' which is not static
       ______f = {     \
       ^
   include/linux/compiler.h:154:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
   include/linux/string.h:369:2: note: in expansion of macro 'if'
     if (p_size < size)
     ^~
   include/linux/compiler.h:162:4: warning: '______f' is static but declared in inline function 'memchr_inv' which is not static
       ______f = {     \
       ^
   include/linux/compiler.h:154:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
   include/linux/string.h:367:2: note: in expansion of macro 'if'
     if (__builtin_constant_p(size) && p_size < size)
     ^~
   include/linux/compiler.h:162:4: warning: '______f' is static but declared in inline function 'memchr' which is not static
       ______f = {     \
       ^
   include/linux/compiler.h:154:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
   include/linux/string.h:358:2: note: in expansion of macro 'if'
     if (p_size < size)
     ^~
   include/linux/compiler.h:162:4: warning: '______f' is static but declared in inline function 'memchr' which is not static
       ______f = {     \
       ^
   include/linux/compiler.h:154:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
   include/linux/string.h:356:2: note: in expansion of macro 'if'
     if (__builtin_constant_p(size) && p_size < size)
     ^~
   include/linux/compiler.h:162:4: warning: '______f' is static but declared in inline function 'memcmp' which is not static
       ______f = {     \
       ^
   include/linux/compiler.h:154:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
   include/linux/string.h:348:2: note: in expansion of macro 'if'
     if (p_size < size || q_size < size)

vim +/if +810 net//netfilter/nf_nat_core.c

   803	
   804	static int __init nf_nat_init(void)
   805	{
   806		int ret, i;
   807	
   808		/* Leave them the same for the moment. */
   809		nf_nat_htable_size = nf_conntrack_htable_size;
 > 810		if (nf_nat_htable_size < ARRAY_SIZE(nf_nat_locks))
   811			nf_nat_htable_size = ARRAY_SIZE(nf_nat_locks);
   812	
   813		nf_nat_bysource = nf_ct_alloc_hashtable(&nf_nat_htable_size, 0);
   814		if (!nf_nat_bysource)
   815			return -ENOMEM;
   816	
   817		ret = nf_ct_extend_register(&nat_extend);
   818		if (ret < 0) {
   819			nf_ct_free_hashtable(nf_nat_bysource, nf_nat_htable_size);
   820			printk(KERN_ERR "nf_nat_core: Unable to register extension\n");
   821			return ret;
   822		}
   823	
   824		for (i = 0; i < ARRAY_SIZE(nf_nat_locks); i++)
   825			spin_lock_init(&nf_nat_locks[i]);
   826	
   827		nf_ct_helper_expectfn_register(&follow_master_nat);
   828	
   829		BUG_ON(nfnetlink_parse_nat_setup_hook != NULL);
   830		RCU_INIT_POINTER(nfnetlink_parse_nat_setup_hook,
   831				   nfnetlink_parse_nat_setup);
   832	#ifdef CONFIG_XFRM
   833		BUG_ON(nf_nat_decode_session_hook != NULL);
   834		RCU_INIT_POINTER(nf_nat_decode_session_hook, __nf_nat_decode_session);
   835	#endif
   836		return 0;
   837	}
   838	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Download attachment ".config.gz" of type "application/gzip" (28555 bytes)

Powered by blists - more mailing lists