On Wed, Mar 10, 2010 at 11:30:20AM +0900, Takuya Yoshikawa wrote: > Gleb Natapov wrote: > >On Tue, Mar 09, 2010 at 04:50:29PM +0200, Avi Kivity wrote: > >>On 03/09/2010 04:09 PM, Gleb Natapov wrote: > >>>Currently when string instruction is only partially complete we go back > >>>to a guest mode, guest tries to reexecute instruction and exits again > >>>and at this point emulation continues. Avoid all of this by restarting > >>>instruction without going back to a guest mode. > >>What happens if rcx is really big? Going back into the guest gave > >>us a preemption point. > >> > >Two solutions. We can check if reschedule is required and yield cpu if > >needed. Or we can enter guest from time to time. > > One generic question: from the viewpoint of KVM's policy, is it OK to make > the semantics different from real CPUs? > > Semantics, may be better to use other words, but I'm little bit worried that > the second solution may change something, not mentioning about bugs but some > behavior patterns depending on the "time to time". > Entering guest from time to time will not change semantics of the processor (if code is not modified under processor's feet at least). Currently we reenter guest mode after each iteration of string instruction for all instruction but ins/outs. -- Gleb. -- 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