Penguin XEN: HVMLoader

Last update : Saturday the 22nd of November 2008
maintained by: Guillaume Thouvenin

Table of Contents [Back to main menu]

  1. HVM Loader



HVM Loader

Different OS.

We tried to install different operating systems on a virtual environment to see if they can be used unmodified. We tested Windows, Linux, FreeBSD, NetBSD, FreeDOS, Solaris 10 and plan9.

Which distributions are working
Windows XP pro sp2+ coccinelle:
   winxp.iso
OK
Windows 2000 pro:
   win2000pro.iso
KO
The installation seems to work but when we reboot the computer the boot screen is displayed and the system seems to hang. Before displaying the boot screen, it is very slow. Messages printed in dmesg are:
(XEN) (GUEST: 2) unsupported PCI BIOS function 0x0E
(XEN) (GUEST: 2) int13_harddisk: function 15, unmapped device for ELDL=81
(XEN) (GUEST: 2) KBD: int09h_handler(): unknown scancode read!
(XEN) (GUEST: 2) KBD: int09h_handler(): unknown scancode read!
Debian stable:
   debian-31r2-i386-netinst.iso
OK
Debian stable:
   debian-31r0a-amd64-netinst.iso
KO
Everything seems ok until the reboot. When rebooting the new installed debian boots until the configuration of the network which failed. After that the boot hangs:
Configuring network interfaces...eth0: link down
Ubuntu:
   ubuntu-6.06-desktop-amd64.iso
KO It started to boot but HVMXEN is displaying a black screen. The command 'xm dmesg' shows:
(XEN) (GUEST: 10) HVM Loader
(XEN) (GUEST: 10) Loading ROMBIOS ...
(XEN) (GUEST: 10) Loading Cirrus VGABIOS ...
(XEN) (GUEST: 10) Loading VMXAssist ...
(XEN) (GUEST: 10) VMX go ...
(XEN) (GUEST: 10) VMXAssist (Jul 17 2006)
(XEN) (GUEST: 10) Memory size 1024 MB
(XEN) (GUEST: 10) E820 map:
(XEN) (GUEST: 10) 0000000000000000 - 000000000009F800 (RAM)
(XEN) (GUEST: 10) 000000000009F800 - 00000000000A0000 (Reserved)
(XEN) (GUEST: 10) 00000000000A0000 - 00000000000C0000 (Type 16)
(XEN) (GUEST: 10) 00000000000F0000 - 0000000000100000 (Reserved)
(XEN) (GUEST: 10) 0000000000100000 - 000000003FFFE000 (RAM)
(XEN) (GUEST: 10) 000000003FFFE000 - 000000003FFFF000 (Type 18)
(XEN) (GUEST: 10) 000000003FFFF000 - 0000000040000000 (Type 17)
(XEN) (GUEST: 10) 0000000040000000 - 0000000040003000 (ACPI NVS)
(XEN) (GUEST: 10) 0000000040003000 - 000000004000D000 (ACPI Data)
(XEN) (GUEST: 10) 00000000FEC00000 - 0000000100000000 (Type 16)
(XEN) (GUEST: 10)
(XEN) (GUEST: 10) Start BIOS ...
(XEN) (GUEST: 10) Starting emulated 16-bit real-mode: ip=F000:FFF0
(XEN) (GUEST: 10)  rombios.c,v 1.138 2005/05/07 15:55:26 vruppert Exp $
(XEN) (GUEST: 10) Remapping master: ICW2 0x8 -> 0x20
(XEN) (GUEST: 10) Remapping slave: ICW2 0x70 -> 0x28
(XEN) (GUEST: 10) VGABios $Id: vgabios.c,v 1.61 2005/05/24 16:50:50 vruppert Exp $
(XEN) (GUEST: 10) HVMAssist BIOS, 1 cpu, $Revision: 1.138 $ $Date: 2005/05/07 15:55:26 $
(XEN) (GUEST: 10)
(XEN) (GUEST: 10) ata0-0: PCHS=8322/16/63 translation=lba LCHS=522/255/63
(XEN) (GUEST: 10) ata0 master: QEMU HARDDISK ATA-7 Hard-Disk (4096 MBytes)
(XEN) (GUEST: 10) ata0  slave: Unknown device
(XEN) (GUEST: 10) ata1 master: QEMU CD-ROM ATAPI-4 CD-Rom/DVD-Rom
(XEN) (GUEST: 10) ata1  slave: Unknown device
(XEN) (GUEST: 10)
(XEN) (GUEST: 10) Booting from CD-Rom...
(XEN) (GUEST: 10) Unknown opcode at 4004:153B=0x4157B
(XEN) (GUEST: 10) Halt called from %eip 0xD3BC1
FreeBSD:
   6.1-RELEASE-amd64-disc1.iso
   6.1-RELEASE-amd64-disc2.iso
   6.1-RELEASE-amd64-bootonly.iso
   6.1-RELEASE-i386-bootonly.iso
KO
It seems that there is a problem with the FreeBSD bootloader. The message is:
BTX halted
The command 'xm dmesg' shows:
(XEN) (GUEST: 3) HVM Loader
(XEN) (GUEST: 3) Loading ROMBIOS ...
(XEN) (GUEST: 3) Loading Cirrus VGABIOS ...
(XEN) (GUEST: 3) Loading VMXAssist ...
(XEN) (GUEST: 3) VMX go ...
(XEN) (GUEST: 3) VMXAssist (Jul 17 2006)
(XEN) (GUEST: 3) Memory size 1024 MB
(XEN) (GUEST: 3) E820 map:
(XEN) (GUEST: 3) 0000000000000000 - 000000000009F800 (RAM)
(XEN) (GUEST: 3) 000000000009F800 - 00000000000A0000 (Reserved)
(XEN) (GUEST: 3) 00000000000A0000 - 00000000000C0000 (Type 16)
(XEN) (GUEST: 3) 00000000000F0000 - 0000000000100000 (Reserved)
(XEN) (GUEST: 3) 0000000000100000 - 000000003FFFE000 (RAM)
(XEN) (GUEST: 3) 000000003FFFE000 - 000000003FFFF000 (Type 18)
(XEN) (GUEST: 3) 000000003FFFF000 - 0000000040000000 (Type 17)
(XEN) (GUEST: 3) 0000000040000000 - 0000000040003000 (ACPI NVS)
(XEN) (GUEST: 3) 0000000040003000 - 000000004000D000 (ACPI Data)
(XEN) (GUEST: 3) 00000000FEC00000 - 0000000100000000 (Type 16)
(XEN) (GUEST: 3)
(XEN) (GUEST: 3) Start BIOS ...
(XEN) (GUEST: 3) Starting emulated 16-bit real-mode: ip=F000:FFF0
(XEN) (GUEST: 3)  rombios.c,v 1.138 2005/05/07 15:55:26 vruppert Exp $
(XEN) (GUEST: 3) Remapping master: ICW2 0x8 -> 0x20
(XEN) (GUEST: 3) Remapping slave: ICW2 0x70 -> 0x28
(XEN) (GUEST: 3) VGABios $Id: vgabios.c,v 1.61 2005/05/24 16:50:50 vruppert Exp $
(XEN) (GUEST: 3) HVMAssist BIOS, 1 cpu, $Revision: 1.138 $ $Date: 2005/05/07 15:55:26 $
(XEN) (GUEST: 3)
(XEN) (GUEST: 3) ata0-0: PCHS=8322/16/63 translation=lba LCHS=522/255/63
(XEN) (GUEST: 3) ata0 master: QEMU HARDDISK ATA-7 Hard-Disk (4096 MBytes)
(XEN) (GUEST: 3) ata0  slave: Unknown device
(XEN) (GUEST: 3) ata1 master: QEMU CD-ROM ATAPI-4 CD-Rom/DVD-Rom
(XEN) (GUEST: 3) ata1  slave: Unknown device
(XEN) (GUEST: 3)
(XEN) (GUEST: 3) Booting from CD-Rom...
(XEN) (GUEST: 3) Remapping master: ICW2 0x20 -> 0x20
(XEN) (GUEST: 3) Remapping slave: ICW2 0x28 -> 0x28
NetBSD:
   netbsd-i386cd-3.0.1.iso
KO
The system crashes when extracting sets from the CD-Rom. We tried ftp or http method but we couldn't set the network.
(XEN) __hvm_bug at vmx.c:2342
(XEN) ----[ Xen-3.0-unstable    Not tainted ]----
(XEN) CPU:    8
(XEN) RIP:    0008:[<00000000c01df598>]
(XEN) RFLAGS: 0000000000010247   CONTEXT: hvm
(XEN) rax: 00000000c1bea000   rbx: 00000000c99f6ffe   rcx: 00000000ff8a1400
(XEN) rdx: 0000000000000170   rsi: 0000000000000002   rdi: 00000000cb771ffe
(XEN) rbp: 00000000cc0876e8   rsp: 00000000cc0876d8   r8:  0000000000000000
(XEN) r9:  0000000000000000   r10: 0000000000000000   r11: 0000000000000000
(XEN) r12: 0000000000000000   r13: 0000000000000000   r14: 0000000000000000
(XEN) r15: 0000000000000000   cr0: 000000008005003b   cr3: 0000000007fe7000
(XEN) ds: 0010   es: 0010   fs: 0030   gs: 0010   ss: 0010   cs: 0008
(XEN) domain_crash_sync called from vmx.c:2342
(XEN) Domain 5 (vcpu#0) crashed on cpu#8:
(XEN) ----[ Xen-3.0-unstable    Not tainted ]----
(XEN) CPU:    8
(XEN) RIP:    0008:[<00000000c01df598>]
(XEN) RFLAGS: 0000000000010247   CONTEXT: hvm
(XEN) rax: 00000000c1bea000   rbx: 00000000c99f6ffe   rcx: 00000000ff8a1400
(XEN) rdx: 0000000000000170   rsi: 0000000000000002   rdi: 00000000cb771ffe
(XEN) rbp: 00000000cc0876e8   rsp: 00000000cc0876d8   r8:  0000000000000000
(XEN) r9:  0000000000000000   r10: 0000000000000000   r11: 0000000000000000
(XEN) r12: 0000000000000000   r13: 0000000000000000   r14: 0000000000000000
(XEN) r15: 0000000000000000   cr0: 000000008005003b   cr3: 0000000007fe7000
(XEN) ds: 0010   es: 0010   fs: 0030   gs: 0010   ss: 0010   cs: 0008
NetBSD:
   netbsd-amd64cd-3.0.1.iso
KO
The system freezes after the boot.
>> NetBSD/amd64 BIOS Boot, Revision 3.2
>> (riz@b2.netbsd.org, Thu Jul 13 20:05:49 UTC 2006)
>> Memory: 639/1047552 k
Press return to boot now, any other key for boot menu
booting fd0a:netbsd - starting in 0
3374992+5222640+214064=0x9678a0 
[At this point it is frozen]
The command 'xm dmesg' shows:
(XEN) (GUEST: 4) HVM Loader
(XEN) (GUEST: 4) Loading ROMBIOS ...
(XEN) (GUEST: 4) Loading Cirrus VGABIOS ...
(XEN) (GUEST: 4) Loading VMXAssist ...
(XEN) (GUEST: 4) VMX go ...
(XEN) (GUEST: 4) VMXAssist (Jul 17 2006)
(XEN) (GUEST: 4) Memory size 1024 MB
(XEN) (GUEST: 4) E820 map:
(XEN) (GUEST: 4) 0000000000000000 - 000000000009F800 (RAM)
(XEN) (GUEST: 4) 000000000009F800 - 00000000000A0000 (Reserved)
(XEN) (GUEST: 4) 00000000000A0000 - 00000000000C0000 (Type 16)
(XEN) (GUEST: 4) 00000000000F0000 - 0000000000100000 (Reserved)
(XEN) (GUEST: 4) 0000000000100000 - 000000003FFFE000 (RAM)
(XEN) (GUEST: 4) 000000003FFFE000 - 000000003FFFF000 (Type 18)
(XEN) (GUEST: 4) 000000003FFFF000 - 0000000040000000 (Type 17)
(XEN) (GUEST: 4) 0000000040000000 - 0000000040003000 (ACPI NVS)
(XEN) (GUEST: 4) 0000000040003000 - 000000004000D000 (ACPI Data)
(XEN) (GUEST: 4) 00000000FEC00000 - 0000000100000000 (Type 16)
(XEN) (GUEST: 4)
(XEN) (GUEST: 4) Start BIOS ...
(XEN) (GUEST: 4) Starting emulated 16-bit real-mode: ip=F000:FFF0
(XEN) (GUEST: 4)  rombios.c,v 1.138 2005/05/07 15:55:26 vruppert Exp $
(XEN) (GUEST: 4) Remapping master: ICW2 0x8 -> 0x20
(XEN) (GUEST: 4) Remapping slave: ICW2 0x70 -> 0x28
(XEN) (GUEST: 4) VGABios $Id: vgabios.c,v 1.61 2005/05/24 16:50:50 vruppert Exp $
(XEN) (GUEST: 4) HVMAssist BIOS, 1 cpu, $Revision: 1.138 $ $Date: 2005/05/07 15:55:26 $
(XEN) (GUEST: 4)
(XEN) (GUEST: 4) ata0-0: PCHS=8322/16/63 translation=lba LCHS=522/255/63
(XEN) (GUEST: 4) ata0 master: QEMU HARDDISK ATA-7 Hard-Disk (4096 MBytes)
(XEN) (GUEST: 4) ata0  slave: Unknown device
(XEN) (GUEST: 4) ata1 master: QEMU CD-ROM ATAPI-4 CD-Rom/DVD-Rom
(XEN) (GUEST: 4) ata1  slave: Unknown device
(XEN) (GUEST: 4)
(XEN) (GUEST: 4) Booting from CD-Rom...
(XEN) (GUEST: 4) should never reach here in function address():
(XEN) (GUEST: 4)        entry=0x0000000000000000, mode=2, seg=0x00000008, offset=0x0000CB73
(XEN) (GUEST: 4)
(XEN) (GUEST: 4) Halt called from %eip 0xD3BC1
Freedos Beta 9 Service Release 2 CD:
   fdbootcd.iso
KO
The vm entry fails due to an invalid guest state. Here is the log:
(XEN) (GUEST: 9) HVM Loader
(XEN) (GUEST: 9) Loading ROMBIOS ...
(XEN) (GUEST: 9) Loading Cirrus VGABIOS ...
(XEN) (GUEST: 9) Loading VMXAssist ...
(XEN) (GUEST: 9) VMX go ...
(XEN) (GUEST: 9) VMXAssist (Jul 17 2006)
(XEN) (GUEST: 9) Memory size 1024 MB
(XEN) (GUEST: 9) E820 map:
(XEN) (GUEST: 9) 0000000000000000 - 000000000009F800 (RAM)
(XEN) (GUEST: 9) 000000000009F800 - 00000000000A0000 (Reserved)
(XEN) (GUEST: 9) 00000000000A0000 - 00000000000C0000 (Type 16)
(XEN) (GUEST: 9) 00000000000F0000 - 0000000000100000 (Reserved)
(XEN) (GUEST: 9) 0000000000100000 - 000000003FFFE000 (RAM)
(XEN) (GUEST: 9) 000000003FFFE000 - 000000003FFFF000 (Type 18)
(XEN) (GUEST: 9) 000000003FFFF000 - 0000000040000000 (Type 17)
(XEN) (GUEST: 9) 0000000040000000 - 0000000040003000 (ACPI NVS)
(XEN) (GUEST: 9) 0000000040003000 - 000000004000D000 (ACPI Data)
(XEN) (GUEST: 9) 00000000FEC00000 - 0000000100000000 (Type 16)
(XEN) (GUEST: 9)
(XEN) (GUEST: 9) Start BIOS ...
(XEN) (GUEST: 9) Starting emulated 16-bit real-mode: ip=F000:FFF0
(XEN) (GUEST: 9)  rombios.c,v 1.138 2005/05/07 15:55:26 vruppert Exp $
(XEN) (GUEST: 9) Remapping master: ICW2 0x8 -> 0x20
(XEN) (GUEST: 9) Remapping slave: ICW2 0x70 -> 0x28
(XEN) (GUEST: 9) VGABios $Id: vgabios.c,v 1.61 2005/05/24 16:50:50 vruppert Exp $
(XEN) (GUEST: 9) HVMAssist BIOS, 1 cpu, $Revision: 1.138 $ $Date: 2005/05/07 15:55:26 $
(XEN) (GUEST: 9)
(XEN) (GUEST: 9) ata0-0: PCHS=2226/16/63 translation=lba LCHS=556/64/63
(XEN) (GUEST: 9) ata0 master: QEMU HARDDISK ATA-7 Hard-Disk (1096 MBytes)
(XEN) (GUEST: 9) ata0  slave: Unknown device
(XEN) (GUEST: 9) ata1 master: QEMU CD-ROM ATAPI-4 CD-Rom/DVD-Rom
(XEN) (GUEST: 9) ata1  slave: Unknown device
(XEN) (GUEST: 9)
(XEN) (GUEST: 9) Booting from CD-Rom...
(XEN) Failed vm entry (exit reason 0x80000021) caused by invalid guest state (0).
(XEN) ************* VMCS Area **************
(XEN)    16-bit Guest-State Fields
(XEN)           0x00000800: 0x0009 0x0020 0x0000 0x0000
(XEN)           0x00000808: 0x0010 0x0000 0x0000 0x0008
(XEN)    16-bit Host-State Fields
(XEN)           0x00000c00: 0x0000 0xe010 0x0000 0x0000
(XEN)           0x00000c08: 0x0000 0x0000 0xe040
(XEN)    64-bit Control Fields
(XEN)           0x00002000: 0x0000000000f86000 0x0000000000000000 0x0000000000f85000 0x0000000000000000
(XEN)           0x00002004: ------------------ ------------------ 0x0000000000000000 0x0000000000000000
(XEN)           0x00002008: 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000
(XEN)           0x0000200c: 0x0000000000000000 0x0000000000000000 ------------------ ------------------
(XEN)           0x00002010: 0xfffc501d9dae4d03 0x00000000fffc501d 0x0000000000000000 0x0000000000000000
(XEN)    64-bit Guest-State Fields
(XEN)           0x00002800: 0xffffffffffffffff 0x00000000ffffffff 0x0000000000000000 0x0000000000000000
(XEN)    32-bit Control Fields
(XEN)           0x00004000: 0x0000001f 0x0699e7fa 0x00004008 0x00000000
(XEN)           0x00004008: 0x00000000 0x00000000 0x0003efff 0x00000000
(XEN)           0x00004010: 0x00000000 0x000011ff 0x00000000 0x00000020
(XEN)           0x00004018: 0x00000000 0x00000000 0x00000000
(XEN)    32-bit RO Data Fields
(XEN)           0x00004400: 0x0000000c 0x80000021 0x00000000 0x00000000
(XEN)           0x00004408: 0x00000000 0x00000000 0x00000003 0x00000000
(XEN)    32-bit Guest-State Fields
(XEN)           0x00004800: 0x0000ffff 0xffffffff 0x0000ffff 0x0000ffff
(XEN)           0x00004808: 0x0000ffff 0x0000ffff 0x00000000 0x00002067
(XEN)           0x00004810: 0x0000002f 0x00000800 0x0000009b 0x0000c09b
(XEN)           0x00004818: 0x00010093 0x00010093 0x00000093 0x00010093
(XEN)           0x00004820: 0x00000082 0x0000008b 0x00000000 0x00000000
(XEN)           0x00004828: 0xe7f9a000 0x00000000
(XEN)    32-bit Host-State Fields
(XEN)           0x00004c00: 0x00000000
(XEN)    Natural 64-bit Control Fields
(XEN)           0x00006000: 0xffffffffffffffff 0xffffffffffffffff 0x0000000000050033 0x0000000000000651
(XEN)           0x00006008: 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000
(XEN)    64-bit RO Data Fields
(XEN)           0x00006400: 0x0000000000000000 0x0000000000040020 0x0000000000104378 0x0000000000047b64
(XEN)           0x00006408: 0x00000000000002af 0x0000000000000000
(XEN)    Natural 64-bit Guest-State Fields
(XEN)           0x00006800: 0x0000000080050033 0x0000000007fb5000 0x0000000000002671 0x0000000000008000
(XEN)           0x00006808: 0x0000000000000000 0x0000000000008000 0x0000000000008000 0x0000000000008000
(XEN)           0x00006810: 0x0000000000008000 0x0000000000000000 0x00000000000d7204 0x0000000000008588
(XEN)           0x00006818: 0x0000000000009000 0x0000000000000400 0x000000000000ffd2 0x00000000000083f0
(XEN)           0x00006820: 0x0000000000010002 0x0000000000000000 0x0000000000000000 0x0000000000000000
(XEN)    Natural 64-bit Host-State Fields
(XEN)           0x00006c00: 0x000000008005003b 0x00000000a623d000 0x00000000000026f0 0x00002b64672124a0
(XEN)           0x00006c08: 0xffffffff805da680 0xffff8300001d7880 0xffff820000000000 0xffff8300001dcc60
(XEN)           0x00006c10: 0x0000000000000000 0x0000000000000000 0xffff8300001affd0 0xffff83000015b0e0
(XEN) **************************************
(XEN) domain_crash_sync called from vmx.c:2126
(XEN) Domain 9 (vcpu#0) crashed on cpu#0:
(XEN) ----[ Xen-3.0-unstable    Not tainted ]----
(XEN) CPU:    0
(XEN) RIP:    0020:[<00000000000083f0>]
(XEN) RFLAGS: 0000000000010002   CONTEXT: hvm
(XEN) rax: 0000000000050013   rbx: 0000000000008539   rcx: 0000000000047b10
(XEN) rdx: 0000000000047ad4   rsi: 0000000000104378   rdi: 0000000000047b64
(XEN) rbp: 0000000000047afc   rsp: 000000000000ffd2   r8:  0000000000000000
(XEN) r9:  0000000000000000   r10: 0000000000000000   r11: 0000000000000000
(XEN) r12: 0000000000000000   r13: 0000000000000000   r14: 0000000000000000
(XEN) r15: 0000000000000000   cr0: 0000000000050033   cr3: 0000000007fb5000
(XEN) ds: 0000   es: 0009   fs: 0010   gs: 0000   ss: 0000   cs: 0020
Solaris 10 6/06:
   sol-10-u2-ga-x86-v1.iso
KO
Installation stops after grub menu and we have the follwing error:
(XEN) (GUEST: 5) int13_harddisk: function 41, unmapped device for ELDL=81
(XEN) (GUEST: 5) int13_harddisk: function 08, unmapped device for ELDL=81
(XEN) (GUEST: 5) *** int 15h function AX=00C0, BX=0000 not yet supported!
(XEN) (GUEST: 5) Invalid %cs=0x660C for protected mode
(XEN) (GUEST: 5)
(XEN) (GUEST: 5) Halt called from %eip 0xD3BC1
Commands used to boot the system are:
kernel /boot/multiboot kernel/unix -B install_media=cdrom
module /boot/x86.miniroot
Plan 9:
   plan9.iso
KO
From the startup menu we choose to boot Plan9 from the CD to see how it works but after the decompression of 9pccd.gz we get the following problem:
(XEN) (GUEST: 7) Trap (0x6) while in real mode
(XEN) (GUEST: 7) eax       50030 ecx    F0012000 edx          A1 ebx           1
(XEN) (GUEST: 7) esp       D7134 ebp    F000130B esi    F0101000 edi    F0009000
(XEN) (GUEST: 7) eip         D85 eflags    33046 cs           48 ds            0
(XEN) (GUEST: 7) es            0 fs            0 uss           8 uesp       7BFD
(XEN) (GUEST: 7) ves           8 vds           8 vfs           8 vgs           8
(XEN) (GUEST: 7) trapno        6 errno         0��00000008: cr0       50030 cr2           0 cr3
(XEN) (GUEST: 7)       12000 cr4          80
(XEN) (GUEST: 7) Halt called from %eip 0xD0382
So we've tried to install it but the same error occurs after decompressing 9pcflop.gz kernel.

Valid XHTML 1.0 Strict