Message ID | 20190620110240.25799-3-vkuznets@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [RFC,1/5] x86: KVM: svm: don't pretend to advance RIP in case wrmsr_interception() results in #GP | expand |
On Thu, Jun 20, 2019 at 4:02 AM Vitaly Kuznetsov <vkuznets@redhat.com> wrote: > > When we're unable to skip instruction with kvm_emulate_instruction() we > will not advance RIP and most likely the guest will get stuck as > consequitive attempts to execute the same instruction will likely result > in the same behavior. > > As we're not supposed to see these messages under normal conditions, switch > to pr_err_once(). > > Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com> Reviewed-by: Jim Mattson <jmattson@google.com>
diff --git a/arch/x86/kvm/svm.c b/arch/x86/kvm/svm.c index 982c6b9bfc90..68f1f0218c95 100644 --- a/arch/x86/kvm/svm.c +++ b/arch/x86/kvm/svm.c @@ -781,7 +781,8 @@ static void skip_emulated_instruction(struct kvm_vcpu *vcpu) if (!svm->next_rip) { if (kvm_emulate_instruction(vcpu, EMULTYPE_SKIP) != EMULATE_DONE) - printk(KERN_DEBUG "%s: NOP\n", __func__); + pr_err_once("KVM: %s: unable to skip instruction\n", + __func__); return; } if (svm->next_rip - kvm_rip_read(vcpu) > MAX_INST_SIZE)
When we're unable to skip instruction with kvm_emulate_instruction() we will not advance RIP and most likely the guest will get stuck as consequitive attempts to execute the same instruction will likely result in the same behavior. As we're not supposed to see these messages under normal conditions, switch to pr_err_once(). Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com> --- arch/x86/kvm/svm.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)