kernel-xen.sh: This script builds the Linux Kernel for a Xen Hypervisor. The configuration files included here are based on generic Slackware configs. For 32bit systems, SMP based config was used. To run "make menuconfig" before compiling a Xen kernel, use "MENUCONFIG=yes" variable. Originally, booting a Xen kernel with LILO bootloader is not supported, so GRUB has to be used. Because some might preffer LILO over GRUB, there is a way to accomplish this with mbootpack. Basicaly, mbootpack takes Linux kernel, initrd and Xen VMM, and packages them up into a single file that looks like a bzImage Linux kernel. To select how kernel is packed use "BOOTLOADER=" variable. Valid options are "lilo" and "grub". Because generic kernel requires an initrd image, there are aditional variables that can be used; ROOTMOD (takes a list of colon-delimited modules to build into initrd), ROOTFS (takes a name of a module to use for root filesystem) and ROOTDEV (takes a name of root filesystem device). After a new kernel image is created, and if bootloader of choice is LILO, include these lines in /etc/lilo.conf: image = /boot/vmlinuz-xen root = /dev/sda2 label = XenLinux append="dom0_mem=512M -- nomodeset" read-only Note: everything before "--" is passed to Xen, and everything after "--" is passed to the Linux kernel. For GRUB, for example, include these lines in /boot/grub/menu.lst: title Slackware XenLinux 14.1 root (hd0,0) kernel /boot/xen.gz dom0_mem=524288 console=vga module /boot/vmlinuz-xen root=/dev/sda2 ro console=tty0 nomodeset module /boot/initrd-xen.gz Note that dom0_mem parameter is critical for a 32bit install. Here are some notes/guidances if your dom0 crashes, freezes or maybe the screen goes blank on boot: - Specify an out of range number to "fbcon" to disable framebuffer altogether, which, for example, is done by appending fbcon=map:9 to the Linux kernel (To see a list of available devices in your system check /proc/fb). - Blacklist framebuffer module from loading. This one requires a bit of digging arround in dmesg/lsmod to find out wich module is in use. - Disable framebuffer devices by setting CONFIG_FB=n in kernel config. - Try booting with another VGA card (sorry).