On Tue, Apr 11, 2023 at 08:09:44PM +0000, Fangrui Song wrote: > Commit 27f2a4db76e8 ("Makefile: fix GDB warning with CONFIG_RELR") > added --use-android-relr-tags to fix a GDB warning > > BFD: /android0/linux-next/vmlinux: unknown type [0x13] section `.relr.dyn' > > The GDB warning has been fixed in version 11.2. > > The DT_ANDROID_RELR tag was deprecated since DT_RELR was standardized. > Thus, --use-android-relr-tags should be removed. While making the > change, try -z pack-relative-relocs, which is supported since LLD 15. > Keep supporting --pack-dyn-relocs=relr as well for older LLD versions. > There is no indication of obsolescence for --pack-dyn-relocs=relr. > > As of today, GNU ld supports the latter option for x86 and powerpc64 > ports and has no intention to support --pack-dyn-relocs=relr. In the > absence of the glibc symbol version GLIBC_ABI_DT_RELR, > --pack-dyn-relocs=relr and -z pack-relative-relocs are identical in > ld.lld. > > GNU ld and newer versions of LLD report warnings (instead of errors) for > unknown -z options. Only errors lead to non-zero exit codes. Therefore, > we should test --pack-dyn-relocs=relr before testing > -z pack-relative-relocs. > > Link: https://github.com/ClangBuiltLinux/linux/issues/1057 > Link: https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=a619b58721f0a03fd91c27670d3e4c2fb0d88f1e > Signed-off-by: Fangrui Song <maskray@xxxxxxxxxx> > Reviewed-by: Nick Desaulniers <ndesaulniers@xxxxxxxxxx> > --- > Makefile | 3 ++- > scripts/tools-support-relr.sh | 8 ++++++-- > 2 files changed, 8 insertions(+), 3 deletions(-) Acked-by: Will Deacon <will@xxxxxxxxxx> Masahiro -- are you happy to pick this one up? If not, I can take it via arm64 (as the only arch currently using this reloc format). Cheers, Will