RFC: Add SHT_GNU_PHDRS

Florian Weimer fweimer@redhat.com
Mon Jan 1 00:00:00 GMT 2018


* H. J. Lu:

> On Thu, Sep 27, 2018 at 5:42 AM, Florian Weimer <fweimer@redhat.com> wrote:
>> * H. J. Lu:
>>
>>> On Thu, Sep 27, 2018 at 3:35 AM, Szabolcs Nagy <nsz@port70.net> wrote:
>>>> an alloc .phdr section covering the program headers solves
>>>> this problem. if sections are not required for segments
>>>> then simply the linker should ensure that there is always
>>>> a load segment covering the program headers, possibly
>>>> without containing any sections, however elf says
>>>> "An object file segment contains one or more sections".
>>>>
>>>> i don't understand why a zero-size section is enough, what
>>>> if phdr > pagesize? will that get covered by the load
>>>> segment that is created for the zero-size section?
>>>
>>> Linker must keep this zero-size section in output and
>>> create a PT_LOAD segment to cover it even if it is
>>> the only SHF_ALLOC section in the PT_LOAD segment.
>>
>> Based on Szabolcs' comment, I don't think the section can be zero-sized.
>>
>
> Why can't we put a zero-size section in a PT_LOAD segment?
> Of course, we need to change linker to do it.

I'm now under the impression that the bits that are PT_LOAD'ed all need
to be covered by (allocated) sections.  A zero-sized section doesn't
cover anything, so it doesn't address this requirement of the ELF
specification.

Thanks,
Florian



More information about the Gnu-gabi mailing list