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

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

flat view

From: Peter Zijlstra <peterz@infradead.org>
Date: 2019-06-18 12:42:00
Also in: linux-arch, linux-doc, linux-mm, lkml

On Tue, Jun 18, 2019 at 10:12:50AM +0100, Dave Martin wrote:
On Mon, Jun 17, 2019 at 02:20:40PM +0200, Thomas Gleixner wrote:
quoted
On Mon, 17 Jun 2019, Florian Weimer wrote:
quoted
* Dave Martin:
quoted
On Tue, Jun 11, 2019 at 12:31:34PM -0700, Yu-cheng Yu wrote:
quoted
We can probably check PT_GNU_PROPERTY first, and fallback (based on ld-linux
version?) to PT_NOTE scanning?
For arm64, we can check for PT_GNU_PROPERTY and then give up
unconditionally.

For x86, we would fall back to PT_NOTE scanning, but this will add a bit
of cost to binaries that don't have NT_GNU_PROPERTY_TYPE_0.  The ld.so
version doesn't tell you what ELF ABI a given executable conforms to.

Since this sounds like it's largely a distro-specific issue, maybe there
could be a Kconfig option to turn the fallback PT_NOTE scanning on?
I'm worried that this causes interop issues similarly to what we see
with VSYSCALL today.  If we need both and a way to disable it, it should
be something like a personality flag which can be configured for each
process tree separately.  Ideally, we'd settle on one correct approach
(i.e., either always process both, or only process PT_GNU_PROPERTY) and
enforce that.
Chose one and only the one which makes technically sense and is not some
horrible vehicle.

Everytime we did those 'oh we need to make x fly workarounds' we regretted
it sooner than later.
So I guess that points to keeping PT_NOTE scanning always available as a
fallback on x86.  This sucks a bit, but if there are binaries already in
the wild that rely on this, I don't think we have much choice...
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.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help