Subject: Re: linker oddity on sparc
To: None <eeh@netbsd.org>
From: Paul Kranenburg <pk@cs.few.eur.nl>
List: tech-toolchain
Date: 01/27/2001 20:42:10
> So, I notice that all sparc (ELF) executables display a weird 64KB
> gap between the end of the .text (or .rodata) segment and the start
> of the .data segment. Below's an arbitrary example objdump.
>
> I'm not aware of any reason this must be so. How can I fix it?
>
> Do not fix that. That is part of the ELF spec.
>
> The maximum ELF pages size for SPARC is 64KB so all
> segments begin at those boundaries. (SPARC v9 uses
> a 1MB maximum ELF page size.) This allows different
> segments, which have different protections, to be
> located on different pages, no matter the design
> of the MMU.
Ok, I see.
It is currently a problem only for the kernel image in that the it's loaded
into memory causes that 64KB range of memory going completely to waste.
> If you want to get rid of that gap you can combine
> the segments (what is that, the -z magic flag?
I'll try to find out what can be done with this in conf/Makefile.sparc.
-pk