2021-08-14 11:05:15

by kernel test robot

[permalink] [raw]
Subject: [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

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 <[email protected]>

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

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


Attachments:
(No filename) (2.32 kB)
.config.gz (40.04 kB)
Download all attachments

2021-08-14 13:36:57

by Greg Kroah-Hartman

[permalink] [raw]
Subject: 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 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 <[email protected]>
>
> 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
>
> ---
> 0-DAY CI Kernel Test Service, Intel Corporation
> https://lists.01.org/hyperkitty/list/[email protected]

Barry, can I get a fix for this?

thanks,

greg k-h

2021-08-14 17:17:49

by Andy Shevchenko

[permalink] [raw]
Subject: 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 Sat, Aug 14, 2021 at 4:36 PM Greg Kroah-Hartman
<[email protected]> 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 <[email protected]>
> >
> > 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

--
With Best Regards,
Andy Shevchenko

2021-08-15 00:08:19

by Barry Song

[permalink] [raw]
Subject: 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 Sun, Aug 15, 2021 at 5:18 AM Andy Shevchenko
<[email protected]> wrote:
>
> On Sat, Aug 14, 2021 at 4:36 PM Greg Kroah-Hartman
> <[email protected]> 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 <[email protected]>
> > >
> > > 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.

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

2021-08-15 03:28:53

by Barry Song

[permalink] [raw]
Subject: 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 Sun, Aug 15, 2021 at 1:36 AM Greg Kroah-Hartman
<[email protected]> 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 <[email protected]>
> >
> > 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
> >
> > ---
> > 0-DAY CI Kernel Test Service, Intel Corporation
> > https://lists.01.org/hyperkitty/list/[email protected]
>
> Barry, can I get a fix for this?

Hi Greg,
As I replied to Andy, this warning has nothing to do with my commit as my
commit doesn't call the involved functions at all.

It has been there for more than one year. but i still send a patch for
this issue
over here:
https://lore.kernel.org/lkml/[email protected]/T/#u

Note this patch is not fixing the latest commits. It is a general
patch for bitmap.

>
> thanks,
>
> greg k-h

Thanks
Barry

2021-08-15 06:36:54

by Greg Kroah-Hartman

[permalink] [raw]
Subject: 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 Sun, Aug 15, 2021 at 03:27:04PM +1200, Barry Song wrote:
> On Sun, Aug 15, 2021 at 1:36 AM Greg Kroah-Hartman
> <[email protected]> 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 <[email protected]>
> > >
> > > 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
> > >
> > > ---
> > > 0-DAY CI Kernel Test Service, Intel Corporation
> > > https://lists.01.org/hyperkitty/list/[email protected]
> >
> > Barry, can I get a fix for this?
>
> Hi Greg,
> As I replied to Andy, this warning has nothing to do with my commit as my
> commit doesn't call the involved functions at all.
>
> It has been there for more than one year. but i still send a patch for
> this issue
> over here:
> https://lore.kernel.org/lkml/[email protected]/T/#u
>
> Note this patch is not fixing the latest commits. It is a general
> patch for bitmap.

Ah, ok, nevermind, I missed that.

greg k-h

2021-08-19 06:26:48

by Chen, Rong A

[permalink] [raw]
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
> <[email protected]> wrote:
>>
>> On Sat, Aug 14, 2021 at 4:36 PM Greg Kroah-Hartman
>> <[email protected]> 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 <[email protected]>
>>>>
>>>> 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 -- [email protected]
> To unsubscribe send an email to [email protected]
>

2021-08-19 08:09:07

by Barry Song

[permalink] [raw]
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 Thu, Aug 19, 2021 at 6:22 PM Chen, Rong A <[email protected]> wrote:
>
>
>
> On 8/15/2021 8:04 AM, Barry Song wrote:
> > On Sun, Aug 15, 2021 at 5:18 AM Andy Shevchenko
> > <[email protected]> wrote:
> >>
> >> On Sat, Aug 14, 2021 at 4:36 PM Greg Kroah-Hartman
> >> <[email protected]> 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 <[email protected]>
> >>>>
> >>>> 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/[email protected]/

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 -- [email protected]
> > To unsubscribe send an email to [email protected]
> >