From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: qemu-kvm: do not allow vcpu stop with in progress PIO Date: Wed, 10 Feb 2010 19:01:46 +0200 Message-ID: <4B72E67A.4060201@redhat.com> References: <20100128190300.414710338@redhat.com> <20100128190411.495771070@redhat.com> <4B6B1D1F.1080701@redhat.com> <20100204213643.GC2766@amt.cnet> <4B6B4031.80008@redhat.com> <20100208224119.GA6516@amt.cnet> <4B710300.7090903@redhat.com> <20100209205805.GA25144@amt.cnet> <4B7259E8.70904@redhat.com> <20100210162523.GD23089@amt.cnet> <4B72E16B.7080704@redhat.com> <4B72E435.6010208@suse.de> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Marcelo Tosatti , kvm@vger.kernel.org, quintela@redhat.com, Gleb Natapov To: Alexander Graf Return-path: Received: from mx1.redhat.com ([209.132.183.28]:11326 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755226Ab0BJRBu (ORCPT ); Wed, 10 Feb 2010 12:01:50 -0500 In-Reply-To: <4B72E435.6010208@suse.de> Sender: kvm-owner@vger.kernel.org List-ID: On 02/10/2010 06:52 PM, Alexander Graf wrote: > > Hrm, trying to read the thread I'm still somewhat lost. What exactly do > you want to document? > > The problem: if KVM_RUN exits with KVM_EXIT_MMIO or KVM_EXIT_IO, then the internal state is inconsistent. The instruction is only half completed, and we need to reissue KVM_RUN to complete it. However, if we're migrating, then we don't want to execute any more guest code. Luckily, if you KVM_RUN with a pending signal, then the pending mmio or io will be completed, and then, if the pending signal is unmasked in kvm's signal mask, KVM_RUN will exit immediately. I would like to document the fact that the signal check happens between the mmio completion and guest entry, and the above sequence as a way to get consistent state after mmio. -- error compiling committee.c: too many arguments to function