On Mon, 9 Dec 2013, H.J. Lu wrote:

> >> No, please don't do that.  Normally, PIE has zero load address and kernel
> >> can load it anywhere.  There are multiple reasons why PIE has non-zero
> >> load address.  Saying you need to load a program above 4GB under x86-64,
> >> you can't do that with normal dynamic executable.  PIE with non-zero load
> >> address is the only way to do that on x86-64.
> >
> > Hmm, so if it's because of 4G PT_LOAD limit, how about at least adding
> 
> Yes.
> 
> > randomized offset to the supplied vaddr?
> 
> Yes, people who build PIE with non-zero vaddr can use
>  randomized vaddr. 

I don't follow you here. Do you suggest compile-time randomzation?

> > PT_LOAD being non-zero causing randomization to be turned off seems like
> > quite unexpected behavior to me, with a great potential to cause a lot of
> > confusion.
> >
> 
> There should be no difference between dynamic executable and PIE
> with non-zero vaddr when choosing where to load them.

Could you please elaborate why do you think this statement is true?

Thanks,

-- 
Jiri Kosina
SUSE Labs
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to