#961736 s390x ld incorrectly replaces lgrl with larl

Package:
binutils
Source:
binutils
Description:
GNU assembler, linker and binary utilities
Submitter:
Ilya Leoshkevich
Date:
2021-03-01 14:15:02 UTC
Severity:
normal
#961736#5
Date:
2020-05-28 14:04:43 UTC
From:
To:
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

#961736#10
Date:
2021-03-01 13:01:36 UTC
From:
To:
Hello,

This has been backported to Ubuntu 18.04:
https://bugs.launchpad.net/ubuntu/+source/binutils/+bug/1903814

Would it be possible to have this in Debian too?

Best regards,
Ilya