On 24.12.2008, at 05:18, Todd Deshane wrote:

On Tue, Dec 23, 2008 at 12:04 PM, Alexander Graf <[email protected]> wrote:
Your KVM kernel module does not like that the guest writes into
MSR_VM_HSAVE_PA. This is pretty fundamental and should always work if you build current git kvm kernel modules. Are you sure you're using the current
git modules? Are you using the -enable-nesting option for qemu?

Please try to rmmod everything, take a fresh checkout from git, compile it and load the module with insmod kvm-amd.ko nested=1. I can't think of any
way this could fail.


OK, so I followed your directions above much more carefully, got the latest
checkout and insmod'd kvm, kvm-amd nested=1 and watched carefully
to the syslog (dmesg).

When the kvm_amd module was loaded I get:

kvm: Nested Virtualization enabled

Good sign.

So I booted up a guest with:

sudo qemu-system-x86_64 -enable-nesting -m 512 -drive
file=/dev/storage/deshantm-desktop,if=virtio,boot=on -drive
file=/dev/storage/deshantm-temp-space,if=virtio -usb -usbdevice tablet
-net nic,macaddr=00:16:3e:16:00:00,model=virtio -net
tap,script=/usr/local/share/qemu-ifup -daemonize -vnc :16

I checked /proc/cpuinfo, which showed the svm flag (doesn't show the
svm flag without the -enable-nesting)

So all looks pretty good.

Yep. That looks all pretty good :-). A lot better than before!



During the guest boot, some normal looking messages.
Dec 23 22:42:28 amdbox kernel: [15715.578035] device tap0 entered
promiscuous mode
Dec 23 22:42:28 amdbox kernel: [15715.578059] br0: port 2(tap0)
entering learning state
Dec 23 22:42:29 amdbox avahi-daemon[5457]: Registering new address
record for fe80::f01d:36ff:fe6f:597 on tap0.*.
Dec 23 22:42:37 amdbox kernel: [15724.576010] br0: topology change
detected, propagating
Dec 23 22:42:37 amdbox kernel: [15724.576014] br0: port 2(tap0)
entering forwarding state
Dec 23 22:42:38 amdbox kernel: [15725.185009] tap0: no IPv6 routers present


Then, in the guest I run a more simple command:
sudo qemu-system-x86_64 -hda ubuntu-server.img -cdrom install_cd.iso
which produces dmesg in the base as follows:

Dec 23 22:44:05 amdbox kernel: [15812.088706] __ratelimit: 20
callbacks suppressed
Dec 23 22:44:05 amdbox kernel: [15812.088710] emulation failed (mmio)
rip ffffffffa0370a11 0f 01 da 0f

Ugh. Looks like the emulation part is still broken :-(. Please use the attached patch to disable the emulation optimization for now.

Avi, could you please apply that patch for kvm-82 too, so we get something working out? I'll take a closer look at what's broken exactly later on.

Alex

Attachment: disable-emulation.patch
Description: Binary data


Reply via email to