Files
ubports_kernel_google_msm/include/linux
Ed Swierk ffde22ac53 KVM: Xen PV-on-HVM guest support
Support for Xen PV-on-HVM guests can be implemented almost entirely in
userspace, except for handling one annoying MSR that maps a Xen
hypercall blob into guest address space.

A generic mechanism to delegate MSR writes to userspace seems overkill
and risks encouraging similar MSR abuse in the future.  Thus this patch
adds special support for the Xen HVM MSR.

I implemented a new ioctl, KVM_XEN_HVM_CONFIG, that lets userspace tell
KVM which MSR the guest will write to, as well as the starting address
and size of the hypercall blobs (one each for 32-bit and 64-bit) that
userspace has loaded from files.  When the guest writes to the MSR, KVM
copies one page of the blob from userspace to the guest.

I've tested this patch with a hacked-up version of Gerd's userspace
code, booting a number of guests (CentOS 5.3 i386 and x86_64, and
FreeBSD 8.0-RC1 amd64) and exercising PV network and block devices.

[jan: fix i386 build warning]
[avi: future proof abi with a flags field]

Signed-off-by: Ed Swierk <eswierk@aristanetworks.com>
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
2009-12-03 09:32:18 +02:00
..
2009-12-01 11:24:19 +01:00
2009-09-23 07:39:29 -07:00
2009-09-19 02:14:45 -04:00
2009-09-20 16:09:20 +05:30
2009-09-23 11:01:25 -07:00
2009-09-18 09:48:52 -07:00
2009-09-23 07:39:41 -07:00
2009-09-26 10:17:19 -07:00
2009-09-30 00:32:06 -04:00
2009-09-23 07:39:58 -07:00
2009-09-19 13:13:17 -07:00
2009-09-26 10:17:19 -07:00
2009-09-22 07:17:33 -07:00
2009-12-03 09:32:17 +02:00
2009-12-03 09:32:18 +02:00
2009-10-06 00:26:27 -04:00
2009-09-23 07:39:41 -07:00
2009-09-22 07:17:35 -07:00
2009-09-21 15:14:51 +02:00
2009-09-26 10:17:19 -07:00
2009-09-22 07:17:47 -07:00
2009-10-04 15:05:10 -07:00
2009-09-23 07:39:41 -07:00
2009-10-30 12:25:12 -07:00
2009-10-29 07:39:25 -07:00
2009-09-23 06:46:23 -07:00
2009-09-23 18:13:10 -07:00
2009-09-23 22:26:32 +09:30
2009-09-22 07:17:30 -07:00
2009-09-19 13:13:25 -07:00
2009-11-19 13:43:06 -08:00