--- wikisrc/ports/xen/howto.mdwn 2014/12/24 16:06:38 1.37 +++ wikisrc/ports/xen/howto.mdwn 2014/12/26 13:04:31 1.41 @@ -330,13 +330,43 @@ For 4.2 with xl (preferred), add to rc.c TODO: Recommend for/against xen-watchdog. After you have configured the daemons and rebooted, run the following -to inspect Xen's boot messages, available resources, and running -domains: +(or use xl) to inspect Xen's boot messages, available resources, and +running domains: xm dmesg xm info xm list +anita (for testing NetBSD) +-------------------------- + +With the setup so far, one should be able to run anita (see +pkgsrc/sysutils/py-anita) to test NetBSD releases, by doing (as root, +because anita must create a domU): + + anita --vmm=xm test file:///usr/obj/i386/ + +Alternatively, one can use --vmm=xl to use xl-based domU creation instead. +TODO: check this. + +Xen-specific NetBSD issues +-------------------------- + +There are (at least) two additional things different about NetBSD as a +dom0 kernel compared to hardware. + +One is that modules are not usable in DOM0 kernels, so one must +compile in what's needed. It's not really that modules cannot work, +but that modules must be built for XEN3_DOM0 because some of the +defines change and the normal module builds don't do this. Basically, +enabling Xen changes the kernel ABI, and the module build system +doesn't cope with this. + +The other difference is that XEN3_DOM0 does not have exactly the same +options as GENERIC. While it is debatable whether or not this is a +bug, users should be aware of this and can simply add missing config +items if desired. + Updating NetBSD in a dom0 ------------------------- @@ -411,7 +441,10 @@ improves performance. The other is that failed to work. TODO: give working/notworking NetBSD versions for sparse vnd. Note that the use of file/vnd for Xen is not really different than creating a file-backed virtual disk for some other -purpose, except that xentools handles the vnconfig commands. +purpose, except that xentools handles the vnconfig commands. To +create an empty 4G virtual disk, simply do + + dd if=/dev/zero of=foo-xbd0 bs=1m count=4096 With the lvm style, one creates logical devices. They are then used similarly to vnds. @@ -444,6 +477,22 @@ create a new file and vnconfig it (or lv just like updating physical disks, but without having to be there and without those pesky connectors. +domU kernels +------------ + +On a physical computer, the BIOS reads sector 0, and a chain of boot +loaders finds and loads a kernel. Normally this comes from the root +filesystem. With Xen domUs, the process is totally different. The +normal path is for the domU kernel to be a file in the dom0's +filesystem. At the request of the dom0, Xen loads that kernel into a +new domU instance and starts execution. While domU kernels can be +anyplace, reasonable places to store domU kernels on the dom0 are in / +(so they are near the dom0 kernel), in /usr/pkg/etc/xen (near the +config files), or in /u0/xen (where the vdisks are). + +See the VPS section near the end for discussion of alternate ways to +obtain domU kernels. + Config files ------------ @@ -608,7 +657,7 @@ working vif-bridge is also provided with #!/bin/sh #============================================================================ - # $NetBSD: howto.mdwn,v 1.36 2014/12/24 16:02:49 gdt Exp $ + # $NetBSD: howto.mdwn,v 1.40 2014/12/26 13:00:23 gdt Exp $ # # /usr/pkg/etc/xen/vif-bridge #