From: Fabiano Rosas <farosas@linux.ibm.com>
To: kvm-ppc@vger.kernel.org
Cc: linuxppc-dev@lists.ozlabs.org, npiggin@gmail.com, aik@ozlabs.ru
Subject: [PATCH v2 5/7] KVM: PPC: mmio: Queue interrupt at kvmppc_emulate_mmio
Date: Thu, 06 Jan 2022 20:03:02 +0000 [thread overview]
Message-ID: <20220106200304.4070825-6-farosas@linux.ibm.com> (raw)
In-Reply-To: <20220106200304.4070825-1-farosas@linux.ibm.com>
If MMIO emulation fails, we queue a Program interrupt to the
guest. Move that line up into kvmppc_emulate_mmio, which is where we
set RESUME_GUEST/HOST.
No functional change, just separation of responsibilities.
Signed-off-by: Fabiano Rosas <farosas@linux.ibm.com>
---
arch/powerpc/kvm/emulate_loadstore.c | 4 +---
arch/powerpc/kvm/powerpc.c | 2 +-
2 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/arch/powerpc/kvm/emulate_loadstore.c b/arch/powerpc/kvm/emulate_loadstore.c
index 48272a9b9c30..ef50e8cfd988 100644
--- a/arch/powerpc/kvm/emulate_loadstore.c
+++ b/arch/powerpc/kvm/emulate_loadstore.c
@@ -355,10 +355,8 @@ int kvmppc_emulate_loadstore(struct kvm_vcpu *vcpu)
}
}
- if (emulated = EMULATE_FAIL) {
+ if (emulated = EMULATE_FAIL)
advance = 0;
- kvmppc_core_queue_program(vcpu, 0);
- }
trace_kvm_ppc_instr(inst, kvmppc_get_pc(vcpu), emulated);
diff --git a/arch/powerpc/kvm/powerpc.c b/arch/powerpc/kvm/powerpc.c
index 3fc8057db4b4..a2e78229d645 100644
--- a/arch/powerpc/kvm/powerpc.c
+++ b/arch/powerpc/kvm/powerpc.c
@@ -307,7 +307,7 @@ int kvmppc_emulate_mmio(struct kvm_vcpu *vcpu)
u32 last_inst;
kvmppc_get_last_inst(vcpu, INST_GENERIC, &last_inst);
- /* XXX Deliver Program interrupt to guest. */
+ kvmppc_core_queue_program(vcpu, 0);
pr_info("%s: emulation failed (%08x)\n", __func__, last_inst);
r = RESUME_HOST;
break;
--
2.33.1
next prev parent reply other threads:[~2022-01-06 20:03 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-06 20:02 [PATCH v2 0/7] KVM: PPC: MMIO fixes Fabiano Rosas
2022-01-06 20:02 ` [PATCH v2 1/7] KVM: PPC: Book3S HV: Stop returning internal values to userspace Fabiano Rosas
2022-01-06 20:02 ` [PATCH v2 2/7] KVM: PPC: Fix vmx/vsx mixup in mmio emulation Fabiano Rosas
2022-01-06 20:03 ` [PATCH v2 3/7] KVM: PPC: Fix mmio length message Fabiano Rosas
2022-01-07 0:19 ` Alexey Kardashevskiy
2022-01-06 20:03 ` [PATCH v2 4/7] KVM: PPC: Don't use pr_emerg when mmio emulation fails Fabiano Rosas
2022-01-06 20:03 ` Fabiano Rosas [this message]
2022-01-07 0:24 ` [PATCH v2 5/7] KVM: PPC: mmio: Queue interrupt at kvmppc_emulate_mmio Alexey Kardashevskiy
2022-01-06 20:03 ` [PATCH v2 6/7] KVM: PPC: mmio: Return to guest after emulation failure Fabiano Rosas
2022-01-07 1:08 ` Alexey Kardashevskiy
2022-01-07 13:07 ` Fabiano Rosas
2022-01-06 20:03 ` [PATCH v2 7/7] KVM: PPC: mmio: Reject instructions that access more than mmio.data size Fabiano Rosas
2022-01-07 0:30 ` Alexey Kardashevskiy
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220106200304.4070825-6-farosas@linux.ibm.com \
--to=farosas@linux.ibm.com \
--cc=aik@ozlabs.ru \
--cc=kvm-ppc@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=npiggin@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox