Subject: Re: objcopy making a mess of converting kernels to a.out format
To: Valeriy E. Ushakov <uwe@ptc.spbu.ru>
From: Chris Gilbert <chris@dokein.co.uk>
List: port-arm
Date: 03/01/2004 00:22:25
On Mon, 1 Mar 2004 03:02:59 +0300
"Valeriy E. Ushakov" <uwe@ptc.spbu.ru> wrote:

> On Mon, Mar 01, 2004 at 02:54:21 +0300, Valeriy E. Ushakov wrote:
> 
> > Oh, that sounds suspiciously familiar:
> > 
> > RCS file: /cvsroot/src/sys/arch/netwinder/conf/kern.ldscript,v
> 
> See also:
> 
> http://mail-index.netbsd.org/tech-toolchain/2003/06/10/0012.html

It certainly looks like the issue, looking at the numbers again:
Sections:
Idx Name          Size      VMA       LMA       File off  Algn
  0 .text         0023bf43  f0000020  f0000020  00008020  2**5
                  CONTENTS, ALLOC, LOAD, READONLY, CODE
  1 link_set_malloc_types 00000120  f023bf64  f023bf64  00243f64  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  2 link_set_sysctl_funcs 0000008c  f023c084  f023c084  00244084  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  3 link_set_evcnts 00000004  f023c110  f023c110  00244110  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  4 .data         000462c0  f023d000  f023d000  00245000  2**2
                  CONTENTS, ALLOC, LOAD, DATA

The maths currently works out that it's actually:
f0000020 + 0023bf43 = f0023bf63
Rounding up to the nearest page makes it f0023c000.

However, the cats kern.ldscript isn't using SIZEOF.  perhaps the issue
is that it doesn't list the link_set* sections in it's .text section?

Chris