lkml.org 
[lkml]   [2021]   [Aug]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [kbuild-all] Re: [driver-core:driver-core-testing 28/31] WARNING: modpost: vmlinux.o(.text.unlikely+0x156c): Section mismatch in reference from the function bitmap_equal() to the variable .init.data:initcall_level_names
On Thu, Aug 19, 2021 at 6:22 PM Chen, Rong A <rong.a.chen@intel.com> wrote:
>
>
>
> On 8/15/2021 8:04 AM, Barry Song wrote:
> > On Sun, Aug 15, 2021 at 5:18 AM Andy Shevchenko
> > <andy.shevchenko@gmail.com> wrote:
> >>
> >> On Sat, Aug 14, 2021 at 4:36 PM Greg Kroah-Hartman
> >> <gregkh@linuxfoundation.org> wrote:
> >>> On Sat, Aug 14, 2021 at 07:03:00PM +0800, kernel test robot wrote:
> >>>> tree: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git driver-core-testing
> >>>> head: 3b35f2a6a625126c57475aa56b5357d8e80b404c
> >>>> commit: 291f93ca339f5b5e6e90ad037bb8271f0f618165 [28/31] lib: test_bitmap: add bitmap_print_bitmask/list_to_buf test cases
> >>>> config: xtensa-randconfig-r004-20210814 (attached as .config)
> >>>> compiler: xtensa-linux-gcc (GCC) 11.2.0
> >>>> reproduce (this is a W=1 build):
> >>>> wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> >>>> chmod +x ~/bin/make.cross
> >>>> # https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git/commit/?id=291f93ca339f5b5e6e90ad037bb8271f0f618165
> >>>> git remote add driver-core https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git
> >>>> git fetch --no-tags driver-core driver-core-testing
> >>>> git checkout 291f93ca339f5b5e6e90ad037bb8271f0f618165
> >>>> # save the attached .config to linux build tree
> >>>> mkdir build_dir
> >>>> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=xtensa SHELL=/bin/bash
> >>>>
> >>>> If you fix the issue, kindly add following tag as appropriate
> >>>> Reported-by: kernel test robot <lkp@intel.com>
> >>>>
> >>>> All warnings (new ones prefixed by >>, old ones prefixed by <<):
> >>>>
> >>>>>> WARNING: modpost: vmlinux.o(.text.unlikely+0x156c): Section mismatch in reference from the function bitmap_equal() to the variable .init.data:initcall_level_names
> >>>> The function bitmap_equal() references
> >>>> the variable __initdata initcall_level_names.
> >>>> This is often because bitmap_equal lacks a __initdata
> >>>> annotation or the annotation of initcall_level_names is wrong.
> >>>>
> >>>> The below error/warnings are from parent commit:
> >>>> << WARNING: modpost: vmlinux.o(.data+0x1a86d8): Section mismatch in reference from the variable qed_mfw_legacy_maps to the variable .init.rodata:__setup_str_initcall_blacklist
> >>>> << WARNING: modpost: vmlinux.o(.data+0x1a87c8): Section mismatch in reference from the variable qed_mfw_ext_maps to the variable .init.rodata:__setup_str_initcall_blacklist
> >>>> << WARNING: modpost: vmlinux.o(.data+0x1a8948): Section mismatch in reference from the variable qede_forced_speed_maps to the variable .init.rodata:__setup_str_initcall_blacklist
> >>
> >>> Barry, can I get a fix for this?
> >>
> >> Max already pointed out, but I guess you were not in Cc list, that
> >> it's a GCC bug in his opinion, but GCC people don't ack it.
> >> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92938
> >
> > I really don't understand what is going on here. My understanding is
> > this report has nothing to do with the
> > new commit and it doesn't report any valid place where kernel code is wrong.
>
> Hi Barry,
>
> Sorry for the misunderstanding, the warning only changed a little by
> this commit, see:
>
> >>>> The below error/warnings are from parent commit:
> >>>> << WARNING: modpost: vmlinux.o(.data+0x1a86d8): Section mismatch
> in reference from the variable qed_mfw_legacy_maps to the variable
> .init.rodata:__setup_str_initcall_blacklist
> >>>> << WARNING: modpost: vmlinux.o(.data+0x1a87c8): Section mismatch
> in reference from the variable qed_mfw_ext_maps to the variable
> .init.rodata:__setup_str_initcall_blacklist
> >>>> << WARNING: modpost: vmlinux.o(.data+0x1a8948): Section mismatch
> in reference from the variable qede_forced_speed_maps to the variable
> .init.rodata:__setup_str_initcall_blacklist
>
> we'll update the message to give a heavy hint.

Rong, note we have another discussion over here:
https://lore.kernel.org/lkml/20210815032132.14530-1-21cnbao@gmail.com/

and a gcc bug was reported one year ago:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92938


>
> Best Regards,
> Rong Chen
>
> >
> > with xtensa gcc 11.1 which is the one i can easily download from here
> > after google:
> > http://kernel.c3sl.ufpr.br/pub/tools/crosstool/
> >
> > i could somehow reproduce this kind of very odd section mismatch
> > report from bitmap:
> > $ ./build-xenta.sh
> > ...
> > MODPOST vmlinux.symvers
> > WARNING: modpost: vmlinux.o(.text.unlikely+0x4d64): Section mismatch
> > in reference from the function bitmap_equal() to the variable
> > .init.rodata:__setup_str_initcall_blacklist
> > The function bitmap_equal() references
> > the variable __initconst __setup_str_initcall_blacklist.
> > This is often because bitmap_equal lacks a __initconst
> > annotation or the annotation of __setup_str_initcall_blacklist is wrong.
> >
> > ...
> > WARNING: modpost: lib/find_bit_benchmark.o(.text.unlikely+0x0):
> > Section mismatch in reference from the (unknown reference) (unknown)
> > to the variable .init.data:bitmap2
> > The function (unknown)() references
> > the variable __initdata bitmap2.
> > This is often because (unknown) lacks a __initdata
> > annotation or the annotation of bitmap2 is wrong.
> > ...
> >
> > But after reverting my commit, it is *still* there:
> >
> > $ git revert 2069b8b9ce8b758e015ce49225b1fedac4accd9c
> > [scheduler e158c85c6ccc] Revert "lib: test_bitmap: add
> > bitmap_print_bitmask/list_to_buf test cases"
> > 1 file changed, 150 deletions(-)
> >
> > $ ./build-xenta.sh
> > ...
> > MODPOST vmlinux.symvers
> > WARNING: modpost: vmlinux.o(.text.unlikely+0x4d64): Section mismatch
> > in reference from the function bitmap_equal() to the variable
> > .init.rodata:__setup_str_initcall_blacklist
> > The function bitmap_equal() references
> > the variable __initconst __setup_str_initcall_blacklist.
> > This is often because bitmap_equal lacks a __initconst
> > annotation or the annotation of __setup_str_initcall_blacklist is wrong.
> > ...
> > WARNING: modpost: lib/find_bit_benchmark.o(.text.unlikely+0x0):
> > Section mismatch in reference from the (unknown reference) (unknown)
> > to the variable .init.data:bitmap2
> > The function (unknown)() references
> > the variable __initdata bitmap2.
> > This is often because (unknown) lacks a __initdata
> > annotation or the annotation of bitmap2 is wrong.
> >
> > Kernel: arch/xtensa/boot/boot-elf/../Image.elf is ready
> > GEN Module.symvers
> >
> >>
> >> --
> >> With Best Regards,
> >> Andy Shevchenko
> >
> > Thanks
> > Barry
> > _______________________________________________
> > kbuild-all mailing list -- kbuild-all@lists.01.org
> > To unsubscribe send an email to kbuild-all-leave@lists.01.org
> >

\
 
 \ /
  Last update: 2021-08-19 10:08    [W:0.985 / U:0.148 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site