Subject: Re: NetBSD/xen kernel failures?
To: None <port-xen@NetBSD.org>
From: None <jdbaker@mylinuxisp.com>
List: port-xen
Date: 10/20/2006 11:57:43
My build of "release" for i386 (under NetBSD/xen) finished, but the
resulting XEN3_DOM0 kernel still wouldn't load.  Xen complained about:

    Not a XEN-ELF image:  '__xen_guest' section not found.

Attempting to load a native NetBSD/i386 kernel with GRUB results in:

    Error 13:  Invalid or unsupported executable format.

The other problem I mentioned with some NetBSD/xen kernels crashing I
cannot report on better until I can arrange to have a serial console
attached to another machine.

Just for grins, I rebuilt my custom "JDBT-X3D0" kernel (which has a
supporting "JDBT-X2D0" config, which is the XEN2_DOM0 config with the
extraneous device support commented out).  This was also built with the
system running under the previous working XEN3_DOM0 kernel.

I copied the custom NetBSD/xen kernel into place and it loaded successfully.
What gives?  I made no changes at all.  Not even updating the source tree.

Output of 'uname -a':
NetBSD jdb-test.sac.accd.edu 4.0_BETA NetBSD
4.0_BETA (JDBT-X3D0) #3: Thu Oct 19 11:38:34 CDT 2006
sysop@jdb-test.sac.accd.edu:/space/nbsd/build/sys/arch/i386/compile/JDBT-X3D0
i386

The only odd thing about my custom kernel, is that I get complaints at boot
time (and now that I'm starting to experiment with getting a DOMU running),
about:

    /kern/xen/balloon:  No such file or directory

I don't see anything in the kernel config file that I might have
accidentally commented out that would cause that.

Below is what my configuration looks like.  All filesystems are FFSv2
with softdeps enabled.  The listing of the root directory was made
back when I first posted about my observations.

output of 'df -k':
Filesystem  1K-blocks      Used     Avail Capacity  Mounted on
/dev/wd0a       63798     39328     21282    64%    /
/dev/wd0f      246503     20500    213678     8%    /var
/dev/wd0g     3050142   1493810   1403826    51%    /usr
/dev/wd0e      246503         7    234171     0%    /tmp
/dev/wd0h    14316326   6537488   7063022    48%    /space
kernfs              1         1         0   100%    /kern

/grub/menu.lst:
#
# menu.lst - GRUB boot menu configuration file
#

# setup GRUB appearance
color light-gray/blue black/light-gray

# The default entry if no user selection, 0-based.
default=0
fallback=1

# wait this long for user to select.
timeout=10

# Xen 3 with /netbsd-x3d0 as domain 0 noapic
title Xen 3.0 / NetBSD-4.0_BETA (hda0, VGA, noapic)
  root (hd0,0,a)
  kernel (hd0,0,g)/pkg/xen3-kernel/xen.gz dom0_mem=131072 noapic
  module (hd0,0,a)/netbsd-x3d0 root=/dev/hda1 ro console=pc

# Xen 3 with /netbsd-x3d0 as domain 0 noapic backup
title Xen 3.0 / NetBSD-4.0_BETA backup (hda0, VGA, noapic)
  root (hd0,0,a)
  kernel (hd0,0,g)/pkg/xen3-kernel/xen.gz dom0_mem=131072 noapic
  module (hd0,0,a)/netbsd-x3d0.old root=/dev/hda1 ro console=pc

# Xen 3 with /netbsd-x3d0 as domain 0
title Xen 3.0 / NetBSD-4.0_BETA (hda0, VGA)
  root (hd0,0,a)
  kernel (hd0,0,g)/pkg/xen3-kernel/xen.gz dom0_mem=131072
  module (hd0,0,a)/netbsd-x3d0 root=/dev/hda1 ro console=pc

# Xen 3 with /netbsd-x3d0 as domain 0 backup
title Xen 3.0 / NetBSD-4.0_BETA backup (hda0, VGA)
  root (hd0,0,a)
  kernel (hd0,0,g)/pkg/xen3-kernel/xen.gz dom0_mem=131072
  module (hd0,0,a)/netbsd-x3d0.old root=/dev/hda1 ro console=pc

# NetBSD
title NetBSD 4.0_BETA
  root (hd0,0,a)
  kernel --type=netbsd /netbsd

# NetBSD backup
title NetBSD 4.0_BETA backup
  root (hd0,0,a)
  kernel --type=netbsd /netbsd.old

# NetBSD chainloader
title NetBSD chain
  root (hd0,0,a) 	     # NetBSD on 1st MBR partition of 1st IDE disk
  chainloader +1

output of 'ls -laF /':
total 45544
drwxr-xr-x  26 root  wheel      512 Oct 16 21:58 ./
drwxr-xr-x  26 root  wheel      512 Oct 16 21:58 ../
-rw-r--r--   2 root  wheel      940 Sep  2  2003 .cshrc
drwxr-xr-x   2 root  wheel      512 Sep  8 16:38 altroot/
drwxr-xr-x   2 root  wheel      512 Aug 29 17:43 amd/
drwxr-xr-x   2 root  wheel     1024 Sep 28 16:12 bin/
-r--r--r--   1 root  wheel    53820 Aug 29 16:12 boot
dr-xr-xr-x   2 root  wheel      512 Oct 16 21:58 cd/
drwxr-xr-x   4 root  wheel    31232 Oct  6 11:51 dev/
drwxr-xr-x   2 root  wheel      512 Sep 28 12:57 emul/
drwxr-xr-x  25 root  wheel     2048 Oct 16 21:58 etc/
drwxr-xr-x   2 root  wheel      512 Oct  5 17:40 grub/
dr-xr-xr-x   2 root  wheel      512 Oct 17 16:32 home/
dr-xr-xr-x   3 root  wheel      512 Oct 17 17:42 kern/
drwxr-xr-x   2 root  wheel     1536 Sep 28 16:03 lib/
drwxr-xr-x   3 root  wheel      512 Sep  8 16:38 libdata/
drwxr-xr-x   2 root  wheel      512 Sep 28 16:03 libexec/
drwxr-xr-x   2 root  wheel      512 Sep  8 16:38 mnt/
dr-xr-xr-x   2 root  wheel      512 Oct 16 21:58 net/
-rwxr-xr-x   1 root  wheel  4717643 Oct 12 13:22 netbsd*
-rwxr-xr-x   1 root  wheel  4849098 Oct 12 17:54 netbsd-x3d0*
-rwxr-xr-x   1 root  wheel  8827257 Oct  5 22:01 netbsd-x3d0.old*
-rwxr-xr-x   1 root  wheel  4717643 Oct  5 15:00 netbsd.old*
drwxr-xr-x   2 root  wheel      512 Aug 29 16:12 proc/
drwxr-xr-x   2 root  wheel     2560 Sep 28 16:15 rescue/
drwxr-xr-x   3 root  wheel      512 Sep  9 00:42 root/
drwxr-xr-x   2 root  wheel     2048 Sep 28 16:14 sbin/
drwxr-xr-x   6 root  wheel      512 Oct  9 20:00 space/
drwxr-xr-x   2 root  wheel      512 Sep  8 16:38 stand/
drwxrwxrwt   6 root  wheel      512 Oct 17 17:41 tmp/
drwxr-xr-x  15 root  wheel      512 Sep  8 16:38 usr/
drwxr-xr-x  24 root  wheel      512 Oct  5 13:44 var/

--
John D. Baker
jdbaker()mylinuxisp!com