KVM-33 + Windows Server 2003 = VMX->OK / SVM->kernel panic?

Alessandro Sardo
2007-07-24T11:12:25Z

Hello list,

I am facing some big issues with the latest KVM release. I am still
trying to boot and use the same VM image on four different hosts, but
with outstanding bad luck.

More precisely, I created a brand new VM image and installed Windows
Server 2003. Then, I did shut it down and archived it. After that, I
copied it to the four hosts and tried to boot it, using the same KVM
version and qemu command line.

Test #1
CPU model: 1 x Dual-Core Intel Core Duo
Host: Ubuntu 6.06, kernel 2.6.15
KVM-33
Result -> everything is OK, no problems at all

----

Test #2
CPU model: 1 x Dual-Core Intel Core 2 Duo
Host: RHEL5 x86_64, kernel 2.6.18-8.1.8.el5
KVM-33
Result -> everything is OK, no problems at all

----

Test #3
CPU model: 1 x Single-Core AMD Athlon64 Processor 3500+ AM2
Host: RHEL5 x86_64, kernel 2.6.18-8.1.8.el5
KVM-33
Result -> boots fine, but when I try to install the SP2 I get the
following kernel panic:

Unable to handle kernel NULL pointer dereference at 0000000000000000 RIP:
[<ffffffff883d80ce>] :kvm:x86_emulate_memop+0x2a79/0x3b03
PGD 7b8a067 PUD 3973067 PMD 0
Oops: 0002 [1] SMP
last sysfs file: /class/net/lo/ifindex
CPU 0
Modules linked in: kvm_amd(U) kvm(U) tun netconsole bridge
cpufreq_ondemand video sbs i2c_ec button battery asus_acpi
acpi_memhotplug ac lp snd_hda_intel snd_hda_codec snd_seq_dummy
snd_seq_oss snd_seq_midi_event snd_seq snd_seq_device snd_pcm_oss floppy
snd_mixer_oss snd_pcm pcspkr sg i2c_nforce2 i2c_core snd_timer snd
shpchp soundcore k8_edac snd_page_alloc parport_pc edac_mc forcedeth
parport ide_cd cdrom serio_raw dm_snapshot dm_zero dm_mirror dm_mod
sata_nv libata sd_mod scsi_mod ext3 jbd ehci_hcd ohci_hcd uhci_hcd
Pid: 2168, comm: kvm Not tainted 2.6.18-8.1.8.el5 #1
RIP: 0010:[<ffffffff883d80ce>] [<ffffffff883d80ce>]
:kvm:x86_emulate_memop+0x2a79/0x3b03
RSP: 0018:ffff81006225d9d8 EFLAGS: 00010246
RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000003
RDX: ffff81006225da60 RSI: 0000000000000000 RDI: ffff81006207a130
RBP: ffffffff883df621 R08: 0000000000000200 R09: 0000000000000000
R10: ffff81003f18d000 R11: ffffffff883eb542 R12: 0000000000000000
R13: ffff81006225db78 R14: 0000000000000000 R15: 0000000000000000
FS: 00000000ffdff000(0000) GS:ffffffff8038a000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000000 CR3: 0000000062cd7000 CR4: 00000000000006e0
Process kvm (pid: 2168, threadinfo ffff81006225c000, task ffff81007d987100)
Stack: ffffffff883df600 03007fffe0e1ce40 00007fffe0e1cea0 0300010000000040
ffff81006225db00 0000000000000004 0000000400000000 0300000000000000
0000000000000000 0000000000000004 0000000400000000 0000000000000000
Call Trace:
[<ffffffff883eb542>] :kvm_amd:svm_get_segment_base+0x0/0x5f
[<ffffffff883d5657>] :kvm:x86_emulate_memop+0x2/0x3b03
[<ffffffff883d0e95>] :kvm:emulate_instruction+0xee/0x278
[<ffffffff883eb542>] :kvm_amd:svm_get_segment_base+0x0/0x5f
[<ffffffff883eacec>] :kvm_amd:emulate_on_interception+0xf/0x30
[<ffffffff883ebbed>] :kvm_amd:svm_vcpu_run+0x506/0x599
[<ffffffff883d11e4>] :kvm:kvm_vcpu_ioctl+0x1c5/0xd04
[<ffffffff80044d31>] try_to_wake_up+0x407/0x418
[<ffffffff800850ed>] __wake_up_common+0x3e/0x68
[<ffffffff8002dd9b>] __wake_up+0x38/0x4f
[<ffffffff800d8498>] core_sys_select+0x234/0x265
[<ffffffff80093f38>] __dequeue_signal+0x18b/0x19b
[<ffffffff80094fd2>] dequeue_signal+0x3c/0xbc
[<ffffffff8003fc5a>] do_ioctl+0x21/0x6b
[<ffffffff8002fa60>] vfs_ioctl+0x248/0x261
[<ffffffff80058bf0>] getnstimeofday+0x10/0x28
[<ffffffff8004a266>] sys_ioctl+0x59/0x78
[<ffffffff8005b14e>] system_call+0x7e/0x83

Code: 4c 89 00 eb 63 48 8b 94 24 f8 00 00 00 48 8b 84 24 08 01 00
RIP [<ffffffff883d80ce>] :kvm:x86_emulate_memop+0x2a79/0x3b03
RSP <ffff81006225d9d8>
CR2: 0000000000000000
<0>Kernel panic - not syncing: Fatal exception
----

Test #4 (the most important one)
CPU model: 2 x Dual-Core AMD Opteron Processor 2210
Host: RHEL5 x86_64, kernel 2.6.18-8.1.8.el5
KVM-33
Result -> boots fine, but I cannot get past logon - I type
username/password and press enter, then I *always* get a BSOD (I sent a
screenshot yesterday to the list)

This is driving me nuts. I can make the VM image available to anyone
interested, please contact me privately for link and account details.
Thanks,