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