[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Xen-devel] [RFC] Hypercalls from HVM guests


  • To: "Steve Ofsthun" <sofsthun@xxxxxxxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxx
  • From: "Petersson, Mats" <Mats.Petersson@xxxxxxx>
  • Date: Fri, 7 Apr 2006 10:47:27 +0200
  • Delivery-date: Fri, 07 Apr 2006 01:48:15 -0700
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>
  • Thread-index: AcZZwJUrtY6Vu/FGQQGa34wGC1EDFgAXpg6Q
  • Thread-topic: [Xen-devel] [RFC] Hypercalls from HVM guests

Steve, 

Interesting subject - I must have missed the September patchset... I've
been thinking a lot about para-virtualized drivers for HVM guests
(because it would improve performance on some functions by a great deal
to avoid intercepting half a dozen IO operations to actually perform a
single transaction - like one READ of the virtual hard-disk). 

I'd like to make sure that you're aware that the AMD architecture also
has a VMMCALL instruction, which is opcode (0F 01 D9). It would be great
if you could implement some sort of auto-detect/switching so that your
code works for AMD too. Of course, we could intercept invalid opcode and
interpret the instruction, but that's far from a practical solution, I
would think. 

--
Mats

> -----Original Message-----
> From: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx 
> [mailto:xen-devel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of 
> Steve Ofsthun
> Sent: 06 April 2006 22:10
> To: xen-devel@xxxxxxxxxxxxxxxxxxx
> Subject: [Xen-devel] [RFC] Hypercalls from HVM guests
> 
> Hi,
> 
> I am currently working on hypercalls from HVM guests.  I 
> started with a set of Intel patches posted to xen-devel last 
> September.  I currently have code running for both 32-bit and 
> 64-bit HVM guests running on a 64-bit hypervisor.
> 
> I am curious why none of the original patches were accepted, 
> and what I might need to do to make them acceptable.
> 
> Is other work being done in this area that hasn't been submitted?
> 
> Should I submit my version of the modified patches as is?
> 
> The following list summarizes the changes.
> 
> Hypervisor changes:
> 
> o Add vmexit handling for the VMCALL instruction.  This 
> includes adjustments
>    to hypercall arguments due to 32-bit vs. 64-bit calling 
> conventions.
> 
> o Modify copy_to_user/copy_from_user to use hvm_copy for HVM guests.
> 
> o Modify grant table setup to properly map the grant table 
> shared data for
>    hvm guests.
> 
> o Provide alternate headers for compiling 32-bit HVM guest 
> code to interface
>    with a 64-bit hypervisor.  Many of the hypervisor 
> structures used for
>    hypercalls vary between 32-bit and 64-bit guests.
> 
> Dom 0 changes:
> 
> o Modify HVM building to properly map in a xen start info 
> page and the shared
>    info page for event channel notifications.
> 
> o Add a virtual PCI device to QEMU to facilitate event 
> channel handling.
> 
> Dom U (HVM) driver changes:
> 
> o Modify grant table setup for HVM guest code.
> 
> o Modify event channel handling to interface with an 
> unmodified Linux kernel
>    running as an HVM guest.
> 
> o Make misc xen support available as a loadable module.
> 
> Steve
> --
> Steve Ofsthun - Virtual Iron Software, Inc.
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-devel
> 
> 


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.