On Mon, Jun 17, 2019 at 02:20:40PM +0200, Thomas Gleixner wrote: > On Mon, 17 Jun 2019, Florian Weimer wrote: > > * Dave Martin: > > > On Tue, Jun 11, 2019 at 12:31:34PM -0700, Yu-cheng Yu wrote: > > >> 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'd still favour a Kconfig option to allow this support to be suppressed by arches that don't have a similar legacy to be compatible with. Cheers ---Dave