This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Fix relro when COMMONPAGESIZE < MAXPAGESIZE


Jakub Jelinek <jakub@redhat.com> writes:

> And, if you change 0x100ddc to 0x10a370, then I'm very sure .got.plt + 24
> is not at 4K boundary if it was on 4K boundary with 0x100ddc.

Then the relro adjustment calculation is broken.  It does not make sense
to waste 1MB in a 120K object just to get 4K alignment.

Also, looking at the linker script template elf.sc, I'm wondering why
DATA_SEGMENT_RELRO_GOTPLT_END isn't defined as this:

    DATA_SEGMENT_RELRO_GOTPLT_END=". = DATA_SEGMENT_RELRO_END (. + ${SEPARATE_GOTPLT}) - ${SEPARATE_GOTPLT};"

and why this definition is only active when COMMONPAGESIZE is defined.  In
other places SEPARATE_GOTPLT is used even when COMMONPAGESIZE is not
defined.

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux AG, Maxfeldstraße 5, 90409 Nürnberg, Germany
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]