Base address of executables - weirdness?
H. Peter Anvin
hpa at zytor.com
Wed Jun 7 04:21:27 EST 2006
Linas Vepstas wrote:
> On Tue, Jun 06, 2006 at 08:42:49AM -0700, H. Peter Anvin wrote:
>> I'm trying to track down an odd issue with klibc on ppc32.
>>
>> Until recently, binaries linked with ld defaulted to a base address of
>> 0x10000000+SIZEOF_HEADERS. However, recently I've gotten a couple of
>> reports -- and I've been able to confirm this on my FC5 system -- that
>> some versions of ld links at 0x01800000+SIZEOF_HEADERS. Needless to
>> say, this is more than a bit confusing, *especially* since "ld -verbose"
>> still reports:
>>
>> PROVIDE (__executable_start = 0x10000000); . = 0x10000000 +
>> SIZEOF_HEADERS;
>>
>> ... at the top of the linker script.
>>
>> I'm rather baffled. Has anyone else seen this, and/or have any other
>> explanation?
>
> Googling "0x01800000 linux ppc" brings up some interesting but old hits.
>
> However, I swear I saw someone suggest a patch last week that changed
> 0x10000000 to 0x01800000 somewhere, (vmlinux.lds ??) as a proposed cure
> for a bug. Sorry, I deleted it.
>
Well, it's worse than I previously surmised. I can't seem to find any combination of
options which work on both affected and unaffected binutils. This is a real mess.
-hpa
More information about the Linuxppc-dev
mailing list