From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marcelo Tosatti Subject: qemu-kvm: do not allow vcpu stop with in progress PIO Date: Tue, 9 Feb 2010 18:58:05 -0200 Message-ID: <20100209205805.GA25144@amt.cnet> 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> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: kvm@vger.kernel.org, quintela@redhat.com, Gleb Natapov To: Avi Kivity Return-path: Received: from mx1.redhat.com ([209.132.183.28]:8089 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751791Ab0BIU6Y (ORCPT ); Tue, 9 Feb 2010 15:58:24 -0500 Received: from int-mx08.intmail.prod.int.phx2.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id o19KwOQe005432 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Tue, 9 Feb 2010 15:58:24 -0500 Content-Disposition: inline In-Reply-To: <4B710300.7090903@redhat.com> Sender: kvm-owner@vger.kernel.org List-ID: You're right... this should be enough to avoid a stop with uncomplete PIO (and this is what happens for MMIO already). The signal will not be dequeued, so KVM will complete_pio and exit before entering with -EAGAIN. Please review and queue for stable. qemu upstream needs a bit more work. ------- Re-enter the kernel to complete in progress PIO. Otherwise the operation can be lost during migration. Signed-off-by: Marcelo Tosatti Index: qemu-kvm/qemu-kvm.c =================================================================== --- qemu-kvm.orig/qemu-kvm.c +++ qemu-kvm/qemu-kvm.c @@ -967,6 +967,7 @@ int kvm_run(CPUState *env) run->io.direction, run->io.size, run->io.count); + r = 0; break; case KVM_EXIT_DEBUG: r = handle_debug(env);