Subject: Re: [PATCH bpf-next 1/2] bpf: change var type of BTF_ID_LIST to static

From: kernel test robot <[email-masked]>
Date: Sat, 18 Jul 2020 07:12:09 +0800

Hi Yonghong,

I love your patch! Yet something to improve:

[auto build test ERROR on bpf-next/master]

url:    https://github.com/0day-ci/linux/commits/Yonghong-Song/compute-bpf_skc_to_-helper-socket-btf-ids-at-build-time/20200718-025117
base:   https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git master
config: x86_64-rhel-7.6-kselftests (attached as .config)
compiler: gcc-9 (Debian 9.3.0-14) 9.3.0
reproduce (this is a W=1 build):
        # save the attached .config to linux build tree
        make W=1 ARCH=x86_64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <[email-masked]>

All error/warnings (new ones prefixed by >>):

   In file included from kernel/bpf/btf.c:21:
>> kernel/bpf/btf.c:3625:13: warning: array 'bpf_ctx_convert_btf_id' assumed to have one element
    3625 | BTF_ID_LIST(bpf_ctx_convert_btf_id)
         |             ^~~~~~~~~~~~~~~~~~~~~~
   include/linux/btf_ids.h:69:12: note: in definition of macro 'BTF_ID_LIST'
      69 | static u32 name[];
         |            ^~~~
   /tmp/ccYr5IvF.s: Assembler messages:
   /tmp/ccYr5IvF.s:23808: Error: symbol `bpf_ctx_convert_btf_id' is already defined
--
   In file included from kernel/bpf/stackmap.c:12:
>> kernel/bpf/stackmap.c:580:13: warning: array 'bpf_get_task_stack_btf_ids' assumed to have one element
     580 | BTF_ID_LIST(bpf_get_task_stack_btf_ids)
         |             ^~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/btf_ids.h:69:12: note: in definition of macro 'BTF_ID_LIST'
      69 | static u32 name[];
         |            ^~~~
   /tmp/ccjqxVG0.s: Assembler messages:
>> /tmp/ccjqxVG0.s:4352: Error: symbol `bpf_get_task_stack_btf_ids' is already defined
--
   In file included from net/core/filter.c:78:
>> net/core/filter.c:3783:13: warning: array 'bpf_skb_output_btf_ids' assumed to have one element
    3783 | BTF_ID_LIST(bpf_skb_output_btf_ids)
         |             ^~~~~~~~~~~~~~~~~~~~~~
   include/linux/btf_ids.h:69:12: note: in definition of macro 'BTF_ID_LIST'
      69 | static u32 name[];
         |            ^~~~
>> net/core/filter.c:4179:13: warning: array 'bpf_xdp_output_btf_ids' assumed to have one element
    4179 | BTF_ID_LIST(bpf_xdp_output_btf_ids)
         |             ^~~~~~~~~~~~~~~~~~~~~~
   include/linux/btf_ids.h:69:12: note: in definition of macro 'BTF_ID_LIST'
      69 | static u32 name[];
         |            ^~~~
   /tmp/ccAPtQBF.s: Assembler messages:
>> /tmp/ccAPtQBF.s:67210: Error: symbol `bpf_xdp_output_btf_ids' is already defined
>> /tmp/ccAPtQBF.s:67358: Error: symbol `bpf_skb_output_btf_ids' is already defined
--
   In file included from net/core/filter.c:78:
>> net/core/filter.c:3783:13: warning: array 'bpf_skb_output_btf_ids' assumed to have one element
    3783 | BTF_ID_LIST(bpf_skb_output_btf_ids)
         |             ^~~~~~~~~~~~~~~~~~~~~~
   include/linux/btf_ids.h:69:12: note: in definition of macro 'BTF_ID_LIST'
      69 | static u32 name[];
         |            ^~~~
>> net/core/filter.c:4179:13: warning: array 'bpf_xdp_output_btf_ids' assumed to have one element
    4179 | BTF_ID_LIST(bpf_xdp_output_btf_ids)
         |             ^~~~~~~~~~~~~~~~~~~~~~
   include/linux/btf_ids.h:69:12: note: in definition of macro 'BTF_ID_LIST'
      69 | static u32 name[];
         |            ^~~~
   /tmp/cc5vDkeD.s: Assembler messages:
   /tmp/cc5vDkeD.s:67210: Error: symbol `bpf_xdp_output_btf_ids' is already defined
   /tmp/cc5vDkeD.s:67358: Error: symbol `bpf_skb_output_btf_ids' is already defined
--
   kernel/trace/bpf_trace.c: In function '____bpf_trace_printk':
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
     538 |  return __BPF_TP_EMIT();
         |  ^~~~~~
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   kernel/trace/bpf_trace.c:538:2: warning: function '____bpf_trace_printk' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
   In file included from kernel/trace/bpf_trace.c:17:
   kernel/trace/bpf_trace.c: At top level:
>> kernel/trace/bpf_trace.c:746:13: warning: array 'bpf_seq_printf_btf_ids' assumed to have one element
     746 | BTF_ID_LIST(bpf_seq_printf_btf_ids)
         |             ^~~~~~~~~~~~~~~~~~~~~~
   include/linux/btf_ids.h:69:12: note: in definition of macro 'BTF_ID_LIST'
      69 | static u32 name[];
         |            ^~~~
>> kernel/trace/bpf_trace.c:766:13: warning: array 'bpf_seq_write_btf_ids' assumed to have one element
     766 | BTF_ID_LIST(bpf_seq_write_btf_ids)
         |             ^~~~~~~~~~~~~~~~~~~~~
   include/linux/btf_ids.h:69:12: note: in definition of macro 'BTF_ID_LIST'
      69 | static u32 name[];
         |            ^~~~
   /tmp/ccD742Hy.s: Assembler messages:
>> /tmp/ccD742Hy.s:18358: Error: symbol `bpf_seq_write_btf_ids' is already defined
>> /tmp/ccD742Hy.s:18376: Error: symbol `bpf_seq_printf_btf_ids' is already defined
--
   In file included from kernel/bpf/stackmap.c:12:
>> kernel/bpf/stackmap.c:580:13: warning: array 'bpf_get_task_stack_btf_ids' assumed to have one element
     580 | BTF_ID_LIST(bpf_get_task_stack_btf_ids)
         |             ^~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/btf_ids.h:69:12: note: in definition of macro 'BTF_ID_LIST'
      69 | static u32 name[];
         |            ^~~~
   /tmp/cc3dyWIM.s: Assembler messages:
   /tmp/cc3dyWIM.s:4352: Error: symbol `bpf_get_task_stack_btf_ids' is already defined
--
   In file included from kernel/bpf/btf.c:21:
>> kernel/bpf/btf.c:3625:13: warning: array 'bpf_ctx_convert_btf_id' assumed to have one element
    3625 | BTF_ID_LIST(bpf_ctx_convert_btf_id)
         |             ^~~~~~~~~~~~~~~~~~~~~~
   include/linux/btf_ids.h:69:12: note: in definition of macro 'BTF_ID_LIST'
      69 | static u32 name[];
         |            ^~~~
   /tmp/ccCr2PU4.s: Assembler messages:
   /tmp/ccCr2PU4.s:23808: Error: symbol `bpf_ctx_convert_btf_id' is already defined

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/[email-masked]