On Tue, 24 Oct 2023 22:07:39 +0100, Oliver Upton <oliver.upton@xxxxxxxxx> wrote: > > It is a pretty well known fact that KVM does not support MMIO emulation > without valid instruction syndrome information (ESR_EL2.ISV == 0). The > dmesg is useless as it provides zero context and just winds up polluting > logs. Let's just delete it. > > Any userspace that cares should just use KVM_CAP_ARM_NISV_TO_USER, which > inherently ties to a vCPU context. > > Signed-off-by: Oliver Upton <oliver.upton@xxxxxxxxx> > --- > arch/arm64/kvm/mmio.c | 1 - > 1 file changed, 1 deletion(-) > > diff --git a/arch/arm64/kvm/mmio.c b/arch/arm64/kvm/mmio.c > index 3dd38a151d2a..a53721be32ec 100644 > --- a/arch/arm64/kvm/mmio.c > +++ b/arch/arm64/kvm/mmio.c > @@ -143,7 +143,6 @@ int io_mem_abort(struct kvm_vcpu *vcpu, phys_addr_t fault_ipa) > return 0; > } > > - kvm_pr_unimpl("Data abort outside memslots with no valid syndrome info\n"); > return -ENOSYS; > } > > While I totally agree that this *debug* statement should go, we should also replace it with something else. Because when you're trying to debug a guest (or even KVM itself), seeing this message is a sure indication that the guest is performing an access outside of memory. The fact that KVM tries to handle it as MMIO is just an implementation artefact. So I'd very much welcome a replacement tracepoint giving a bit more information, such as guest PC, IPA being accessed, load or store. With that, everybody wins. Thanks, M. -- Without deviation from the norm, progress is not possible.