Skip to content

<unknown>:0: error: __ia32_compat_sys_sysctl changed binding to STB_GLOBAL #1269

@nathanchance

Description

@nathanchance

While building kernel/common's android-4.19-stable branch (ARCH=x86_64 gki_defconfig):

$ make -skj"$(nproc)" LLVM=1 gki_defconfig bzImage
...
<unknown>:0: error: __ia32_compat_sys_sysctl changed binding to STB_GLOBAL
LLVM ERROR: Error parsing inline asm

PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace.
Stack dump:
0.      Program arguments: ld.lld -m elf_x86_64 -z max-page-size=0x200000 -plugin-opt=-code-model=kernel -plugin-opt=-stack-alignment=8 -mllvm -import-instr-limit=5 -r -o vmlinux.o -T .tmp_lto.lds --whole-archive built-in.a --no-whole-archive --start-group lib/lib.a arch/x86/lib/lib.a --end-group
1.      Running pass 'Function Pass Manager' on module 'ld-temp.o'.
2.      Running pass 'X86 Assembly Printer' on function '@__ia32_compat_sys_sysctl'
 #0 0x000000000388e6ac llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x388e6ac)
 #1 0x0000000003768ad5 (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x3768ad5)
 #2 0x00007f0a78b5f3c0 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x153c0)
 #3 0x00007f0a7862418b raise (/lib/x86_64-linux-gnu/libc.so.6+0x4618b)
 #4 0x00007f0a78603859 abort (/lib/x86_64-linux-gnu/libc.so.6+0x25859)
 #5 0x0000000002c12b52 (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x2c12b52)
 #6 0x00000000025dafb5 (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x25dafb5)
 #7 0x0000000002c12734 llvm::AsmPrinter::emitInlineAsm(llvm::StringRef, llvm::MCSubtargetInfo const&, llvm::MCTargetOptions const&, llvm::MDNode const*, llvm::InlineAsm::AsmDialect) const (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x2c12734)
 #8 0x0000000002c1119f llvm::AsmPrinter::emitInlineAsm(llvm::MachineInstr const*) const (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x2c1119f)
 #9 0x0000000002c0858a llvm::AsmPrinter::emitFunctionBody() (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x2c0858a)
#10 0x0000000003d36b20 (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x3d36b20)
#11 0x00000000024d0bc7 llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x24d0bc7)
#12 0x00000000024db96a llvm::FPPassManager::runOnFunction(llvm::Function&) (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x24db96a)
#13 0x00000000024db6cd llvm::FPPassManager::runOnModule(llvm::Module&) (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x24db6cd)
#14 0x00000000024dabe3 llvm::legacy::PassManagerImpl::run(llvm::Module&) (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x24dabe3)
#15 0x0000000004043545 (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x4043545)
#16 0x000000000402946d llvm::lto::backend(llvm::lto::Config const&, std::function<std::unique_ptr<llvm::lto::NativeObjectStream, std::default_delete<llvm::lto::NativeObjectStream> > (unsigned int)>, unsigned int, std::unique_ptr<llvm::Module, std::default_delete<llvm::Module> >, llvm::ModuleSummaryIndex&) (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x402946d)
#17 0x0000000004027acd llvm::lto::LTO::runRegularLTO(std::function<std::unique_ptr<llvm::lto::NativeObjectStream, std::default_delete<llvm::lto::NativeObjectStream> > (unsigned int)>) (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x4027acd)
#18 0x00000000040271d8 llvm::lto::LTO::run(std::function<std::unique_ptr<llvm::lto::NativeObjectStream, std::default_delete<llvm::lto::NativeObjectStream> > (unsigned int)>, std::function<std::function<std::unique_ptr<llvm::lto::NativeObjectStream, std::default_delete<llvm::lto::NativeObjectStream> > (unsigned int)> (unsigned int, llvm::StringRef)>) (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x40271d8)
#19 0x0000000004c28874 lld::elf::BitcodeCompiler::compile() (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x4c28874)
#20 0x0000000004bba6b1 void lld::elf::LinkerDriver::compileBitcodeFiles<llvm::object::ELFType<(llvm::support::endianness)1, true> >() (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x4bba6b1)
#21 0x0000000004ba9e99 void lld::elf::LinkerDriver::link<llvm::object::ELFType<(llvm::support::endianness)1, true> >(llvm::opt::InputArgList&) (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x4ba9e99)
#22 0x0000000004b9499f lld::elf::LinkerDriver::linkerMain(llvm::ArrayRef<char const*>) (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x4b9499f)
#23 0x0000000004b91673 lld::elf::link(llvm::ArrayRef<char const*>, bool, llvm::raw_ostream&, llvm::raw_ostream&) (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x4b91673)
#24 0x0000000004ab6e9b (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x4ab6e9b)
#25 0x0000000004ab643f main (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x4ab643f)
#26 0x00007f0a786050b3 __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x270b3)
#27 0x0000000004ab602e _start (/home/nathan/cbl/toolchains/llvm-20210126-1943-145898740764ff2ff90f7b74e6bb0bb88422afa1/bin/lld+0x4ab602e)
scripts/link-vmlinux.sh: line 101: 986749 Aborted                 ${LD} ${KBUILD_LDFLAGS} -r -o ${1} $(lto_lds) ${objects}
make[1]: *** [Makefile:1157: vmlinux] Error 134

This showed up during a personal CI run: https://github.com/nathanchance/continuous-integration2/runs/1778992951

I am testing right now to see if this is an LLVM 12 regression.

Metadata

Metadata

Assignees

No one assigned

    Labels

    [ARCH] x86_64This bug impacts ARCH=x86_64[FEATURE] LTORelated to building the kernel with LLVM Link Time Optimization[FIXED][LLVM] 13This bug was fixed in LLVM 13.x[TOOL] lldThe issue is relevant to LLD linker

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions