lkml.org 
[lkml]   [2013]   [Dec]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH] binfmt_elf: fix PIE load with randomization disabled
From
On Mon, Dec 9, 2013 at 1:53 PM, H. Peter Anvin <hpa@zytor.com> wrote:
> On 12/09/2013 01:52 PM, H.J. Lu wrote:
>>>
>>> Why is that? It would seem to be a big difference between a relocatable
>>> binary (PIE) and one with a load address fixed at link time.
>>>
>>
>> PIE with non-zero vaddr should be loaded at non-zero
>> vaddr. Otherwise, PIE may not work as expected.
>>
>
> Please explain why that is the case, as it seems to be implying that PIE
> isn't actually relocatable in that case...
>

A Linux/x86-64 user came to me at the end of 2008. He needed
to load an executable above 4GB. I added -Ttext-segment option
to linker:

https://sourceware.org/ml/binutils/2009-01/msg00173.html

so that he could load his program compiled as PIE above 4GB.
If kernel is changed not to honor it, his program won't work any more.
In normal case, PIE has zero vaddr and this doesn't apply.

--
H.J.


\
 
 \ /
  Last update: 2013-12-10 00:41    [W:0.168 / U:0.688 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site