linker script /arch/arm64/kernel/vmlinux.lds build error
Robin Murphy
robin.murphy at arm.com
Wed Sep 7 03:30:23 PDT 2022
On 2022-09-06 19:13, Mohan Rao .vanimina wrote:
> Has anyone ever encountered the following issue.
> Actually I’m trying to configure the page size for 64KB for the AARCH
> 64 platform.
>
> Build error:
> LTO vmlinux.o
> MODPOST vmlinux.symvers
> MODINFO modules.builtin.modinfo
> GEN modules.builtin
> LD .tmp_vmlinux.kallsymsl
> ld.lld: error: k/arch/arm64/kernel/vmlinux.lds:72: symbol not found: PMD_SIZE
>
> I started seeing this build issue after changing the default page size
> from ARM64_4K_PAGES to ARM64_64K_PAGES.
>
> patch:
> choice
> prompt “Page size”
> - default ARM64_4K_PAGES
> + default ARM64_64K_PAGES
> help
> Page size ( translation granule) configuration.
>
It sounds like you've most likely confused the build system into not
rebuilding everything that should have been rebuilt. Hacking Kconfig
sources is not the way to change your configuration; you should do that
by editing .config, either manually or with tools like scripts/config or
one of the interactive make targets.
However it looks like you're using LTO, so I guess there's also a chance
that that could be at fault for failing to properly track some
dependency that the config change affects. If you can still reproduce
this behaviour by changing your config normally, it might be worth
raising it with the Clang folks. FWIW I've never seen any issue
reconfiguring the page size for GCC builds (without LTO).
Robin.
More information about the linux-arm-kernel
mailing list