On Mon, Dec 9, 2013 at 1:39 PM, H. Peter Anvin <h...@zytor.com> wrote: > On 12/09/2013 01:03 PM, 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. >> > > Why does it have to be PIE? >
x86-64 small model is limited to 4GB in size. You can't build a dynamic executable in small model larger than 4GB. There are medium and large models. But they are slower than small models as well as small models in PIE. Also there are no glibc run-times for medium and large models. -- H.J. -- 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/