On Thu, 21 May 2020 at 16:39, Paolo Bonzini <pbonzini@xxxxxxxxxx> wrote: > > On 18/05/20 18:01, Peter Maydell wrote: > > The "right" answer is that the kernel should enhance the KVM_EXIT_MMIO > > API to allow userspace to say "sorry, you got a bus error on that > > memory access the guest just tried" (which the kernel then has to > > turn into an appropriate guest exception, or ignore, depending on > > what the architecture requires.) You don't want to set ret to > > non-zero here, because that will cause us to VM_STOP, and I > > suspect that x86 at least is relying on the implict RAZ/WI > > behaviour it currently gets. > > Yes, it is. It may even be already possible to inject the right > exception (on ARM) through KVM_SET_VCPU_EVENTS or something like that, too. Yeah, in theory we could deliver an exception from userspace by updating all the register state, but I think the kernel really ought to do it both (a) because it's just a neater API to do it that way round and (b) because the kernel is the one that has the info about the faulting insn that it might need for things like setting up a syndrome register value. thanks -- PMM