forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
objtool crashes when using x86 IAS #1207
Labels
[BUG] linux
A bug that should be fixed in the mainline kernel.
[FIXED][LINUX] 5.11
This bug was fixed in Linux 5.11
Reported upstream
This bug was filed on LLVM’s issue tracker, Phabricator, or the kernel mailing list.
[TOOL] objtool
warning is produced by the kernel's objtool
Comments
fengguang
pushed a commit
to 0day-ci/linux
that referenced
this issue
Dec 15, 2020
The Clang assembler likes to strip section symbols, which means objtool can't reference some text code by its section. This confuses objtool greatly, causing it to seg fault. The fix is similar to what was done before, for ORC reloc generation: e81e072 ("objtool: Support Clang non-section symbols in ORC generation") Factor out that code into a common helper and use it for static call reloc generation as well. Reported-by: Arnd Bergmann <arnd@kernel.org> Reviewed-by: Nick Desaulniers <ndesaulniers@google.com> Link: ClangBuiltLinux#1207 Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com>
Merged into mainline: https://git.kernel.org/linus/44f6a7c0755d8dd453c70557e11687bb080a6f21 |
HJL posted a patch for GAS to omit STT_SECTION symbols as well: https://sourceware.org/pipermail/binutils/2020-December/114671.html |
fengguang
pushed a commit
to 0day-ci/linux
that referenced
this issue
Feb 16, 2021
commit 44f6a7c upstream. The Clang assembler likes to strip section symbols, which means objtool can't reference some text code by its section. This confuses objtool greatly, causing it to seg fault. The fix is similar to what was done before, for ORC reloc generation: e81e072 ("objtool: Support Clang non-section symbols in ORC generation") Factor out that code into a common helper and use it for static call reloc generation as well. Reported-by: Arnd Bergmann <arnd@kernel.org> Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Reviewed-by: Nick Desaulniers <ndesaulniers@google.com> Reviewed-by: Miroslav Benes <mbenes@suse.cz> Link: ClangBuiltLinux#1207 Link: https://lkml.kernel.org/r/ba6b6c0f0dd5acbba66e403955a967d9fdd1726a.1607983452.git.jpoimboe@redhat.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
woodsts
pushed a commit
to woodsts/linux-stable
that referenced
this issue
Feb 17, 2021
commit 44f6a7c upstream. The Clang assembler likes to strip section symbols, which means objtool can't reference some text code by its section. This confuses objtool greatly, causing it to seg fault. The fix is similar to what was done before, for ORC reloc generation: e81e072 ("objtool: Support Clang non-section symbols in ORC generation") Factor out that code into a common helper and use it for static call reloc generation as well. Reported-by: Arnd Bergmann <arnd@kernel.org> Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Reviewed-by: Nick Desaulniers <ndesaulniers@google.com> Reviewed-by: Miroslav Benes <mbenes@suse.cz> Link: ClangBuiltLinux/linux#1207 Link: https://lkml.kernel.org/r/ba6b6c0f0dd5acbba66e403955a967d9fdd1726a.1607983452.git.jpoimboe@redhat.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
cythe
pushed a commit
to cythe/linux
that referenced
this issue
Feb 24, 2021
The Clang assembler likes to strip section symbols, which means objtool can't reference some text code by its section. This confuses objtool greatly, causing it to seg fault. The fix is similar to what was done before, for ORC reloc generation: e81e072 ("objtool: Support Clang non-section symbols in ORC generation") Factor out that code into a common helper and use it for static call reloc generation as well. Reported-by: Arnd Bergmann <arnd@kernel.org> Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Reviewed-by: Nick Desaulniers <ndesaulniers@google.com> Reviewed-by: Miroslav Benes <mbenes@suse.cz> Link: ClangBuiltLinux#1207 Link: https://lkml.kernel.org/r/ba6b6c0f0dd5acbba66e403955a967d9fdd1726a.1607983452.git.jpoimboe@redhat.com
tobetter
pushed a commit
to tobetter/linux
that referenced
this issue
Mar 3, 2021
commit 44f6a7c upstream. The Clang assembler likes to strip section symbols, which means objtool can't reference some text code by its section. This confuses objtool greatly, causing it to seg fault. The fix is similar to what was done before, for ORC reloc generation: e81e072 ("objtool: Support Clang non-section symbols in ORC generation") Factor out that code into a common helper and use it for static call reloc generation as well. Reported-by: Arnd Bergmann <arnd@kernel.org> Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Reviewed-by: Nick Desaulniers <ndesaulniers@google.com> Reviewed-by: Miroslav Benes <mbenes@suse.cz> Link: ClangBuiltLinux#1207 Link: https://lkml.kernel.org/r/ba6b6c0f0dd5acbba66e403955a967d9fdd1726a.1607983452.git.jpoimboe@redhat.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
it-is-a-robot
pushed a commit
to openeuler-mirror/kernel
that referenced
this issue
Mar 10, 2021
stable inclusion from stable-5.10.17 commit 2b02985bf83e6da9d9165c5f2165af1b97d76edf bugzilla: 48169 -------------------------------- commit 44f6a7c upstream. The Clang assembler likes to strip section symbols, which means objtool can't reference some text code by its section. This confuses objtool greatly, causing it to seg fault. The fix is similar to what was done before, for ORC reloc generation: e81e072 ("objtool: Support Clang non-section symbols in ORC generation") Factor out that code into a common helper and use it for static call reloc generation as well. Reported-by: Arnd Bergmann <arnd@kernel.org> Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Reviewed-by: Nick Desaulniers <ndesaulniers@google.com> Reviewed-by: Miroslav Benes <mbenes@suse.cz> Link: ClangBuiltLinux/linux#1207 Link: https://lkml.kernel.org/r/ba6b6c0f0dd5acbba66e403955a967d9fdd1726a.1607983452.git.jpoimboe@redhat.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Zheng Zengkai <zhengzengkai@huawei.com> Acked-by: Xie XiuQi <xiexiuqi@huawei.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
[BUG] linux
A bug that should be fixed in the mainline kernel.
[FIXED][LINUX] 5.11
This bug was fixed in Linux 5.11
Reported upstream
This bug was filed on LLVM’s issue tracker, Phabricator, or the kernel mailing list.
[TOOL] objtool
warning is produced by the kernel's objtool
I get lots of objtool crashes on clang-11 and clang-12 building x86 randconfig kernels when using the integrated assembler
Segmentation fault (core dumped)
make[4]: *** [/git/arm-soc/scripts/Makefile.build:283: kernel/entry/common.o] Error 139
make[4]: *** Deleting file 'kernel/entry/common.o'
make[4]: Target '__build' not remade because of errors.
make[3]: *** [/git/arm-soc/scripts/Makefile.build:500: kernel/entry] Error 2
Segmentation fault (core dumped)
make[5]: *** [/git/arm-soc/scripts/Makefile.build:283: arch/x86/kernel/apic/apic.o] Error 139
make[5]: *** Deleting file 'arch/x86/kernel/apic/apic.o'
make[5]: Target '__build' not remade because of errors.
make[4]: *** [/git/arm-soc/scripts/Makefile.build:500: arch/x86/kernel/apic] Error 2
arch/x86/kernel/signal.o: warning: objtool: __setup_rt_frame()+0x478: call to memset() with UACCESS enabled
Segmentation fault (core dumped)
make[4]: *** [/git/arm-soc/scripts/Makefile.build:283: arch/x86/kernel/smp.o] Error 139
make[4]: *** Deleting file 'arch/x86/kernel/smp.o'
Segmentation fault (core dumped)
make[3]: *** [/git/arm-soc/scripts/Makefile.build:283: kernel/softirq.o] Error 139
make[3]: *** Deleting file 'kernel/softirq.o'
make[4]: Target '__build' not remade because of errors.
make[3]: *** [/git/arm-soc/scripts/Makefile.build:500: arch/x86/kernel] Error 2
arch/x86/ia32/ia32_signal.o: warning: objtool: ia32_setup_rt_frame()+0x1de: call to memset() with UACCESS enabled
make[3]: Target '__build' not remade because of errors.
email report https://lore.kernel.org/lkml/CAK8P3a20LXgEQkYSpbFFrJs1mdg19W72dp3pbebH9Pkpib2g-g@mail.gmail.com/T/
example .config https://pastebin.com/e4Kr9mWq
The text was updated successfully, but these errors were encountered: