Is it a GNU Tools failure that PIE use ET_DYN and can't be distinguished from libraries?

Carlos O'Donell carlos@redhat.com
Mon Mar 16 16:55:00 GMT 2015


While looking at recent ABI comparison failures I noticed that 
some internal Red Hat tooling was looking at PIEs and treating
their exported dynamic symbols as fixed ABI/API that must not
change.

The truth is that from the tooling perspective you can't tell the
difference between a PIE and an ET_DYN, except that you might guess
PIE if you see PT_INTERP (and you'd be wrong for libc.so and
ld.so)

Is it a failing of the tooling that we didn't provide a way for
tools to determine PIE vs. DSO?

or

Was it always the goal to be able to dlopen a PIE? e.g. Implement
both the daemon as a standalone executable and as a DSO you could
load and run as a service?

Comments?

Cheers,
Carlos.



More information about the Libc-alpha mailing list