Thread (6 messages) 6 messages, 4 authors, 2019-06-18

Re: [PATCH v7 22/27] binfmt_elf: Extract .note.gnu.property from an ELF file

flat view

From: Dave Martin <Dave.Martin@arm.com>
Date: 2019-06-18 13:32:34
Also in: linux-arch, linux-doc, linux-mm, lkml

On Tue, Jun 18, 2019 at 02:55:12PM +0200, Peter Zijlstra wrote:
On Tue, Jun 18, 2019 at 02:47:00PM +0200, Florian Weimer wrote:
quoted
* Peter Zijlstra:
quoted
I'm not sure I read Thomas' comment like that. In my reading keeping the
PT_NOTE fallback is exactly one of those 'fly workarounds'. By not
supporting PT_NOTE only the 'fine' people already shit^Hpping this out
of tree are affected, and we don't have to care about them at all.
Just to be clear here: There was an ABI document that required PT_NOTE
parsing.
URGH.
quoted
The Linux kernel does *not* define the x86-64 ABI, it only
implements it.  The authoritative source should be the ABI document.

In this particularly case, so far anyone implementing this ABI extension
tried to provide value by changing it, sometimes successfully.  Which
makes me wonder why we even bother to mainatain ABI documentation.  The
kernel is just very late to the party.
How can the kernel be late to the party if all of this is spinning
wheels without kernel support?
PT_GNU_PROPERTY is mentioned and allocated a p_type value in hjl's
spec [1], but otherwise seems underspecified.

In particular, it's not clear whether a PT_GNU_PROPERTY phdr _must_ be
emitted for NT_GNU_PROPERTY_TYPE_0.  While it seems a no-brainer to emit
it, RHEL's linker already doesn't IIUC, and there are binaries in the
wild.

Maybe this phdr type is a late addition -- I haven't attempted to dig
through the history.


For arm64 we don't have this out-of-tree legacy to support, so we can
avoid exhausitvely searching for the note: no PT_GNU_PROPERTY ->
no note.

So, can we do the same for x86, forcing RHEL to carry some code out of
tree to support their legacy binaries?  Or do we accept that there is
already a de facto ABI and try to be compatible with it?

From my side, I want to avoid duplication between x86 and arm64, and
keep unneeded complexity out of the ELF loader where possible.

Cheers
---Dave


[1] https://github.com/hjl-tools/linux-abi/wiki/Linux-Extensions-to-gABI
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help