Re: [patch 1/3] KVM: x86: add ioctls to get/set PIO state

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

 



On 02/04/2010 11:36 PM, Marcelo Tosatti wrote:
On Thu, Feb 04, 2010 at 09:16:47PM +0200, Avi Kivity wrote:
On 01/28/2010 09:03 PM, Marcelo Tosatti wrote:
A vcpu can be stopped after handling IO in userspace,
but before returning to kernel to finish processing.

Is this strictly needed?  If we teach qemu to migrate before
executing the pio request, I think we'll be all right?  should work
at least for IN/INS, not sure about OUT/OUTS.
It would be nice (instead of more state to keep track of between
kernel/user) but the drawbacks i see are:

You'd have to add a limitation so that any IN which was processed
by device emulation has to re-entry kernel to complete it (so it
complicates vcpu stop in userspace).


You could fix that by moving the IN emulation to before guest entry. It complicates the vcpu loop a bit, but is backwards compatible and all that.

And for OUTS larger than page size (== arch->pio_data size) you need to
know the current position to continue it on the destination (or roll
back the entire effect of the instruction in device emulation, and RIP).

What to you mean by current position?

--
I have a truly marvellous patch that fixes the bug which this
signature is too narrow to contain.

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux