On 03/30/2011 12:47 PM, Gleb Natapov wrote:
On Wed, Mar 30, 2011 at 12:38:53PM +0200, Avi Kivity wrote: > On 03/29/2011 02:08 PM, Gleb Natapov wrote: > >Currently we sync registers back and forth before/after exiting > >to userspace for IO, but during IO device model shouldn't need to > >read/write the registers, so we can as well skip those sync points. The > >only exaception is broken vmware backdor interface. The new code sync > >registers content during IO only if registers are read from/written to > >by userspace in the middle of the IO operation and this almost never > >happens in practise. > > While this is a nice idea, how much does it save in practice? It > does introduce more complexity. > I haven't measured, but can try to do so. It eliminates two copies of all registers on each MMIO/PIO read. I expect this to be measurable in workloads that do many such reads.
I don't, especially if these are mmios to userspace. Perhaps it's better to remove the copy on kernel mmio, since it's much faster, if the result is simpler (there can be no KVM_SET_REGS in that context).
-- error compiling committee.c: too many arguments to function -- 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