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  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87czlxsrc8.fsf@email.froward.int.ebiederm.org>
Date:   Wed, 15 Dec 2021 11:36:23 -0600
From:   ebiederm@...ssion.com (Eric W. Biederman)
To:     Rong Chen <rong.a.chen@...el.com>
Cc:     kernel test robot <lkp@...el.com>, kbuild-all@...ts.01.org,
        linux-kernel@...r.kernel.org
Subject: Re: [kbuild-all] Re: [ebiederm-user-namespace:signal-for-v5.17 4/12] arch/x86/kernel/dumpstack.o: warning: objtool: oops_end() falls through to next function show_opcodes()

Rong Chen <rong.a.chen@...el.com> writes:

> On 12/15/21 12:48, Eric W. Biederman wrote:
>> Rong Chen <rong.a.chen@...el.com> writes:
>>
>>> On 12/15/21 01:29, Eric W. Biederman wrote:
>>>> kernel test robot <lkp@...el.com> writes:
>>>>
>>>>> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace.git signal-for-v5.17
>>>>> head:   6b1248798eb6f6d5285db214299996ecc5dc1e6b
>>>>> commit: 0e25498f8cd43c1b5aa327f373dd094e9a006da7 [4/12] exit: Add and use make_task_dead.
>>>>> config: x86_64-randconfig-a011-20211213 (https://download.01.org/0day-ci/archive/20211214/202112140949.Uq5sFKR1-lkp@intel.com/config)
>>>>> compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
>>>>> reproduce (this is a W=1 build):
>>>>>           # https://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace.git/commit/?id=0e25498f8cd43c1b5aa327f373dd094e9a006da7
>>>>>           git remote add ebiederm-user-namespace https://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace.git
>>>>>           git fetch --no-tags ebiederm-user-namespace signal-for-v5.17
>>>>>           git checkout 0e25498f8cd43c1b5aa327f373dd094e9a006da7
>>>>>           # save the config file to linux build tree
>>>>>           mkdir build_dir
>>>>>           make W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash arch/x86/kernel/ kernel/ lib/kunit/
>>>>>
>>>>> 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 >>):
>>>>>
>>>>>>> lib/kunit/kunit-example-test.o: warning: objtool: .text.unlikely: unexpected end of section
>>>>> --
>>>>>>> arch/x86/kernel/dumpstack.o: warning: objtool: oops_end() falls through to next function show_opcodes()
>>>> I am confused.  This change patches objtool to rename
>>>> rewind_stack_and_do_exit to rewind_stack_and_make_dead in the list
>>>> global_noreturns in tools/objtool/check.c
>>>>
>>>> There is no other change to oops_end other than that renaming.
>>>>
>>>> Did the robot somehow mange to run an old version of objtool while
>>>> building and this get this error?
>>>>
>>>> I tried and I am not currently able to reproduce this error.  Do you
>>>> have any additional pointers on how I might reproduce this?
>>> Hi Eric,
>>>
>>> The reproduce step in report based on a full build, I can reproduce
>>> the warnings with the below command:
>>>
>>>    make W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash
>> Any chance you could do "make arch/x86/kernel/dumpstack.s" and send it
>> to me?
>
> $ make O=build_dir ARCH=x86_64 SHELL=/bin/bash arch/x86/kernel/dumpstack.s
> make[1]: Entering directory '/mnt/memdrive/linux/build_dir'
>   GEN     Makefile
>   CALL    ../scripts/checksyscalls.sh
>   CALL    ../scripts/atomic/check-atomics.sh
>   DESCEND objtool
>   CC      arch/x86/kernel/dumpstack.s
> make[1]: Leaving directory '/mnt/memdrive/linux/build_dir'
>
> $ make O=build_dir ARCH=x86_64 SHELL=/bin/bash arch/x86/kernel/
> make[1]: Entering directory '/mnt/memdrive/linux/build_dir'
>   GEN     Makefile
>   CALL    ../scripts/checksyscalls.sh
>   CALL    ../scripts/atomic/check-atomics.sh
>   DESCEND objtool
>   CC      arch/x86/kernel/dumpstack.o
> arch/x86/kernel/dumpstack.o: warning: objtool: oops_end() falls
> through to next function show_opcodes()
>   AR      arch/x86/kernel/built-in.a
> make[1]: Leaving directory '/mnt/memdrive/linux/build_dir'

Thanks.  What I was actually hoping for was the assembly code of
oops_end so I could understand the objtool error.

I have tracked it down now.  I accidentally deleted a comma, which
caused C string concatenation which merged two symbols together,
and caused this warning.

What an annoying typo.

Eric

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ