Subject: Re: bouyer-xenamd64 merged
To: Manuel Bouyer <bouyer@antioche.eu.org>
From: Christoph Egger <Christoph_Egger@gmx.de>
List: port-xen
Date: 11/23/2007 09:53:42
On Thursday 22 November 2007 22:56:52 Manuel Bouyer wrote:
> Hi,
> as you may have noticed, I've merged the bouyer-xenamd64 to HEAD.

Yes, I saw your commits. Great work!

> The next NetBSD-daily builds should include amd64 Xen kernels; I've also put
> my own build at ftp://asim.lip6.fr/outgoing/bouyer/rel/
>
> The system is stable enough to build kernel and packages on a dom0, or
> a domU running on a linux or NetBSD dom0, on a 3.1.0 hypervisor.
> The only known bug is a panic when dhclient exits in the INSTALL kernel.
> I'm sure other bugs will show up :)

IMO, the code needs a lot of cleanup. Personally I don't like the tons of

#ifdef XEN
...
#else
...
#endif

blocks. A few of them are ok, but they are too numerous now.

BTW: Do you mind to remove the advertisement clause in your license test, 
please?

> I've also fixed the xentools3 and xenkernel3 packages to build on amd64, so
> installing a NetBSD dom0 is amost the same as on i386. The difficulty comes
> from grub, which is definitively not 64bit-friendly (there are 32bits
> inline assembly all over the place, cast from pointers to int, etc ...)
> I've been able to get it running using the i386 3.1 binary package and
> compat-netbsd32-3.1.

hmm... If you had tried out Xen-unstable, then you would have noticed I 
already did that work. So you did double work... Pity.

Xen-unstable is in stabilization phase until Xen 3.2 is out. JFYI.

> Also, xentools3-hvm doens't build yet.

Of course not! It won't until it is possible to build NetBSD/i386 binaries
on NetBSD/amd64 almost by passing -m32 to gcc. The problem is not gcc here,
it is the lack of i386 headers and libs on NetBSD/amd64.

I think, I am mentioning this the third or fourth time on this list. Did 
someone count? ;-)


> For now, the symbol table is not properly loaded neither in dom0 or domU;
> so ddb will only show the addresses and no function names. Better keep
> around netbsd.gdb and the source tree if you want to debug it :)

This is a bug in NetBSD/Xen, not in Xen. You need to pass "BSDSYMTAB=yes"
and not "BSDSYMTAB"  in locore.S.

Christoph