On Tue, 13 Aug 2019 16:45:11 +0200, Paolo Bonzini <pbonzini@xxxxxxxxxx> wrote: > On 13/08/19 15:54, Adalbert Lazăr wrote: > > Leaving kvm_vcpu_block() in order to handle a request such as 'pause', > > would cause the vCPU to enter the guest when resumed. Most of the > > time this does not appear to be an issue, but during early boot it > > can happen for a non-boot vCPU to start executing code from areas that > > first needed to be set up by vCPU #0. > > > > In a particular case, vCPU #1 executed code which resided in an area > > not covered by a memslot, which caused an EPT violation that got > > turned in mmu_set_spte() into a MMIO request that required emulation. > > Unfortunatelly, the emulator tripped, exited to userspace and the VM > > was aborted. > > Okay, this makes sense. Maybe you want to handle KVM_REQ_INTROSPECTION > in vcpu_run rather than vcpu_enter_guest? > > Paolo Right! We've missed that.