$NetBSD: patch-CVE-2012-3432,v 1.1 2012/07/28 12:02:16 drochner Exp $ see http://lists.xen.org/archives/html/xen-devel/2012-07/msg01649.html --- xen/arch/x86/hvm/io.c.orig 2009-08-06 12:56:41.000000000 +0000 +++ xen/arch/x86/hvm/io.c @@ -181,6 +181,8 @@ int handle_mmio(void) rc = hvm_emulate_one(&ctxt); + if ( rc != X86EMUL_RETRY ) + curr->arch.hvm_vcpu.io_state = HVMIO_none; if ( curr->arch.hvm_vcpu.io_state == HVMIO_awaiting_completion ) curr->arch.hvm_vcpu.io_state = HVMIO_handle_mmio_awaiting_completion; else