I'm running into this when building the latest Linux kernel with BTF
on s390x. GCC generates the following correct code:
lgrl %r9,__stop_BTF@GOTENT
which ld then incorrectly optimizes into
larl %r9,0x26c030c
larl argument must be aligned on a 2-byte boundary, so whenever
__stop_BTF ends up at an odd address, the resulting kernel cannot parse
the embedded BTF.
This problem is a known one and is fixed by:
https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=e6213e09ed0ef6ee40d00981c38baac6964aa95b
Would it be possible to cherry-pick this into Debian 10?
Best regards,
Ilya