[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2f334887-5cc4-87ce-6eaa-61afc8c1265a@intel.com>
Date: Thu, 19 Aug 2021 14:22:13 +0800
From: "Chen, Rong A" <rong.a.chen@...el.com>
To: Barry Song <21cnbao@...il.com>,
Andy Shevchenko <andy.shevchenko@...il.com>
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Max Filippov <jcmvbkbc@...il.com>,
kernel test robot <lkp@...el.com>,
Barry Song <song.bao.hua@...ilicon.com>,
"open list:STAGING SUBSYSTEM" <devel@...verdev.osuosl.org>,
Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
kbuild-all@...ts.01.org,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [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 8/15/2021 8:04 AM, Barry Song wrote:
> On Sun, Aug 15, 2021 at 5:18 AM Andy Shevchenko
> <andy.shevchenko@...il.com> wrote:
>>
>> On Sat, Aug 14, 2021 at 4:36 PM Greg Kroah-Hartman
>> <gregkh@...uxfoundation.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@...el.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.
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@...ts.01.org
> To unsubscribe send an email to kbuild-all-leave@...ts.01.org
>
Powered by blists - more mailing lists