From: Marc Zyngier <maz@kernel.org>
To: "Paolo Bonzini" <pbonzini@redhat.com>,
"Radim Krčmář" <rkrcmar@redhat.com>,
"Julien Thierry" <julien.thierry.kdev@gmail.com>,
"Suzuki K Poulose" <suzuki.poulose@arm.com>,
"James Morse" <james.morse@arm.com>,
"Joerg Roedel" <joro@8bytes.org>,
"Suravee Suthikulpanit" <Suravee.Suthikulpanit@amd.com>,
Tangnianyao <tangnianyao@huawei.com>
Cc: kvmarm@lists.cs.columbia.edu, kvm@vger.kernel.org
Subject: [PATCH 0/2] KVM: arm/arm64: Fix guest's PMR synchronization when blocking on WFI
Date: Fri, 2 Aug 2019 11:37:07 +0100 [thread overview]
Message-ID: <20190802103709.70148-1-maz@kernel.org> (raw)
It recently came to light that if we run a guest that actively uses
interrupt priorities to block interrupts, vcpus can end-up being
blocked while they shouldn't, leading to an unresponsive guest (a
slightly less than desirable outcome).
Patch #1 fixes the issue (which has been with us since 4.12), which I plan
to take in for 5.3 with immediate backport to stable.
Patch #2 is more of an RFC, as it also impacts the SVN AVIC support. It
moves the kvm_arch_vcpu_blocking callback to happen earlier, leading to
much better performances on ARM, and leading to the above fix to be
applied at the best possible spot. I'd welcome any comment/testing on
this, specially on non-ARM systems.
Marc Zyngier (2):
KVM: arm/arm64: Sync ICH_VMCR_EL2 back when about to block
KVM: Call kvm_arch_vcpu_blocking early into the blocking sequence
include/kvm/arm_vgic.h | 1 +
virt/kvm/arm/arm.c | 11 +++++++++++
virt/kvm/arm/vgic/vgic-v2.c | 9 ++++++++-
virt/kvm/arm/vgic/vgic-v3.c | 7 ++++++-
virt/kvm/arm/vgic/vgic.c | 11 +++++++++++
virt/kvm/arm/vgic/vgic.h | 2 ++
virt/kvm/kvm_main.c | 7 +++----
7 files changed, 42 insertions(+), 6 deletions(-)
--
2.20.1
_______________________________________________
kvmarm mailing list
kvmarm@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/kvmarm
WARNING: multiple messages have this Message-ID (diff)
From: Marc Zyngier <maz@kernel.org>
To: "Paolo Bonzini" <pbonzini@redhat.com>,
"Radim Krčmář" <rkrcmar@redhat.com>,
"Julien Thierry" <julien.thierry.kdev@gmail.com>,
"Suzuki K Poulose" <suzuki.poulose@arm.com>,
"James Morse" <james.morse@arm.com>,
"Joerg Roedel" <joro@8bytes.org>,
"Suravee Suthikulpanit" <Suravee.Suthikulpanit@amd.com>,
Tangnianyao <tangnianyao@huawei.com>
Cc: kvm@vger.kernel.org, kvmarm@lists.cs.columbia.edu
Subject: [PATCH 0/2] KVM: arm/arm64: Fix guest's PMR synchronization when blocking on WFI
Date: Fri, 2 Aug 2019 11:37:07 +0100 [thread overview]
Message-ID: <20190802103709.70148-1-maz@kernel.org> (raw)
It recently came to light that if we run a guest that actively uses
interrupt priorities to block interrupts, vcpus can end-up being
blocked while they shouldn't, leading to an unresponsive guest (a
slightly less than desirable outcome).
Patch #1 fixes the issue (which has been with us since 4.12), which I plan
to take in for 5.3 with immediate backport to stable.
Patch #2 is more of an RFC, as it also impacts the SVN AVIC support. It
moves the kvm_arch_vcpu_blocking callback to happen earlier, leading to
much better performances on ARM, and leading to the above fix to be
applied at the best possible spot. I'd welcome any comment/testing on
this, specially on non-ARM systems.
Marc Zyngier (2):
KVM: arm/arm64: Sync ICH_VMCR_EL2 back when about to block
KVM: Call kvm_arch_vcpu_blocking early into the blocking sequence
include/kvm/arm_vgic.h | 1 +
virt/kvm/arm/arm.c | 11 +++++++++++
virt/kvm/arm/vgic/vgic-v2.c | 9 ++++++++-
virt/kvm/arm/vgic/vgic-v3.c | 7 ++++++-
virt/kvm/arm/vgic/vgic.c | 11 +++++++++++
virt/kvm/arm/vgic/vgic.h | 2 ++
virt/kvm/kvm_main.c | 7 +++----
7 files changed, 42 insertions(+), 6 deletions(-)
--
2.20.1
next reply other threads:[~2019-08-02 10:37 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-08-02 10:37 Marc Zyngier [this message]
2019-08-02 10:37 ` [PATCH 0/2] KVM: arm/arm64: Fix guest's PMR synchronization when blocking on WFI Marc Zyngier
2019-08-02 10:37 ` [PATCH 1/2] KVM: arm/arm64: Sync ICH_VMCR_EL2 back when about to block Marc Zyngier
2019-08-02 10:37 ` Marc Zyngier
2019-08-02 10:37 ` [PATCH 2/2] KVM: Call kvm_arch_vcpu_blocking early into the blocking sequence Marc Zyngier
2019-08-02 10:37 ` Marc Zyngier
2019-08-02 10:46 ` Paolo Bonzini
2019-08-02 10:46 ` Paolo Bonzini
2019-08-18 17:53 ` Marc Zyngier
2019-08-18 17:53 ` Marc Zyngier
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=20190802103709.70148-1-maz@kernel.org \
--to=maz@kernel.org \
--cc=Suravee.Suthikulpanit@amd.com \
--cc=james.morse@arm.com \
--cc=joro@8bytes.org \
--cc=julien.thierry.kdev@gmail.com \
--cc=kvm@vger.kernel.org \
--cc=kvmarm@lists.cs.columbia.edu \
--cc=pbonzini@redhat.com \
--cc=rkrcmar@redhat.com \
--cc=suzuki.poulose@arm.com \
--cc=tangnianyao@huawei.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.