* Guest image and symtable alignement
@ 2006-04-11 13:14 Mathieu Ropert
2006-04-13 9:18 ` Keir Fraser
0 siblings, 1 reply; 2+ messages in thread
From: Mathieu Ropert @ 2006-04-11 13:14 UTC (permalink / raw)
To: xen-devel
Hi,
I found a difference between Xen's domain kernel symbol table alignement
and alignement found in some other OS, like BSD.
On Xen (looking at loadelfsymtab() in common/elf.c), symtable length is
stored on an ELFROUND rounded address (4 bytes on 32bits, 8 bytes on 64
bits) followed by the ELF header. As length is an int, header isn't 8
bytes aligned on 64 bits (no problem on 32 bit as sizeof (int) ==
ELFROUND), whereas OS like BSD expects the header to be aligned on a
long boundary.
I'd like to know whichever is right (if there is any standard about
that), because this may cause some incompatibilty problems with future
ports attempts.
Was also wondering if we could just fix it be moving all this 4 bytes
forward in the guest OS code (may break pointer references, if any?).
Thanks,
Mathieu
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: Guest image and symtable alignement
2006-04-11 13:14 Guest image and symtable alignement Mathieu Ropert
@ 2006-04-13 9:18 ` Keir Fraser
0 siblings, 0 replies; 2+ messages in thread
From: Keir Fraser @ 2006-04-13 9:18 UTC (permalink / raw)
To: Mathieu Ropert; +Cc: xen-devel
On 11 Apr 2006, at 14:14, Mathieu Ropert wrote:
> I found a difference between Xen's domain kernel symbol table
> alignement and alignement found in some other OS, like BSD.
>
> On Xen (looking at loadelfsymtab() in common/elf.c), symtable length
> is stored on an ELFROUND rounded address (4 bytes on 32bits, 8 bytes
> on 64 bits) followed by the ELF header. As length is an int, header
> isn't 8 bytes aligned on 64 bits (no problem on 32 bit as sizeof (int)
> == ELFROUND), whereas OS like BSD expects the header to be aligned on
> a long boundary.
>
> I'd like to know whichever is right (if there is any standard about
> that), because this may cause some incompatibilty problems with future
> ports attempts.
> Was also wondering if we could just fix it be moving all this 4 bytes
> forward in the guest OS code (may break pointer references, if any?).
That code is used *only* by BSD ports. So I guess it does work for them
and, since the build of the OS will be targetted at Xen they can always
do whatever is needed to get their symtab to be accepted by the
loadelfsymtab() code. If there is a problem, it'll be up to them to
submit a patch to fix it.
-- Keir
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2006-04-13 9:18 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-04-11 13:14 Guest image and symtable alignement Mathieu Ropert
2006-04-13 9:18 ` Keir Fraser
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.