Baoquan He [off-list ref] writes:
On 11/02/16 at 04:00am, Thiago Jung Bauermann wrote:
quoted
Hello,
The kexec_file code currently builds the purgatory as a partially linked object
(using ld -r). Is there a particular reason to use that instead of a position
independent executable (PIE)?
It's taken as "-r", relocatable in user space kexec-tools too originally.
I think Vivek just keeps it the same when moving into kernel.
At least on x86 using just -r removed the need for a GOT and all of the
other nasty dynamic relocatable bits, that are not needed when the you
don't want to share your text bits with the page cache.
I can see reaons for refactoring code but I expect PIE expecutables need
a GOT and all of that pain in the neck stuff that can just be avoided by
building the code to run at an absolute address.
So far I have not seen ELF relocations that are difficult to process.
Eric