Build ID is missing for arm64 with CONFIG_MODVERSIONS=y using ld >= 2.36 on 5.4, 5.10, and 5.15 Backport BuildID fixes. I've build tested this on {x86_64, arm64, riscv, powerpc, s390, sh}. # view Build ID $ readelf -n vmlinux | grep "Build ID" Changes for v2: - rebase 5/5 c1c551bebf92 ("sh: define RUNTIME_DISCARD_EXIT") from upstream Previous threads: [1] https://lore.kernel.org/all/cover.1674850666.git.tom.saeger@xxxxxxxxxx [2] https://lore.kernel.org/all/3df32572ec7016e783d37e185f88495831671f5d.1671143628.git.tom.saeger@xxxxxxxxxx/ [3] https://lore.kernel.org/all/cover.1670358255.git.tom.saeger@xxxxxxxxxx/ Signed-off-by: Tom Saeger <tom.saeger@xxxxxxxxxx> --- Masahiro Yamada (2): arch: fix broken BuildID for arm64 and riscv s390: define RUNTIME_DISCARD_EXIT to fix link error with GNU ld < 2.36 Michael Ellerman (2): powerpc/vmlinux.lds: Define RUNTIME_DISCARD_EXIT powerpc/vmlinux.lds: Don't discard .rela* for relocatable builds Tom Saeger (1): sh: define RUNTIME_DISCARD_EXIT arch/powerpc/kernel/vmlinux.lds.S | 6 +++++- arch/s390/kernel/vmlinux.lds.S | 2 ++ arch/sh/kernel/vmlinux.lds.S | 1 + include/asm-generic/vmlinux.lds.h | 5 +++++ 4 files changed, 13 insertions(+), 1 deletion(-) --- base-commit: a5acb54d4066f27e9707af9d93f047f542d5ad88 change-id: 20230210-tsaeger-upstream-linux-5-10-y-e443820440f6 Best regards, -- Tom Saeger <tom.saeger@xxxxxxxxxx>