[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210729220916.1672875-1-oupton@google.com>
Date: Thu, 29 Jul 2021 22:09:13 +0000
From: Oliver Upton <oupton@...gle.com>
To: kvmarm@...ts.cs.columbia.edu
Cc: kvm@...r.kernel.org, linux-kernel@...r.kernel.org,
Paolo Bonzini <pbonzini@...hat.com>,
Marc Zyngier <maz@...nel.org>,
James Morse <james.morse@....com>,
Alexandru Elisei <alexandru.elisei@....com>,
Suzuki K Poulose <suzuki.poulose@....com>,
Catalin Marinas <catalin.marinas@....com>,
Will Deacon <will@...nel.org>,
Thomas Gleixner <tglx@...utronix.de>,
Peter Zijlstra <peterz@...radead.org>,
Andy Lutomirski <luto@...nel.org>,
linux-arm-kernel@...ts.infradead.org,
Peter Shier <pshier@...gle.com>,
Shakeel Butt <shakeelb@...gle.com>,
Guangyu Shi <guangyus@...gle.com>,
Oliver Upton <oupton@...gle.com>
Subject: [PATCH v2 0/3] KVM: arm64: Use generic guest entry infrastructure
The arm64 kernel doesn't yet support the full generic entry
infrastructure. That being said, KVM/arm64 doesn't properly handle
TIF_NOTIFY_RESUME and could pick this up by switching to the generic
guest entry infrasturture.
Patch 1 adds a missing vCPU stat to ARM64 to record the number of signal
exits to userspace.
Patch 2 unhitches entry-kvm from entry-generic, as ARM64 doesn't
currently support the generic infrastructure.
Patch 3 replaces the open-coded entry handling with the generic xfer
function.
This series was tested on an Ampere Mt. Jade reference system. The
series cleanly applies to kvm/queue (note that this is deliberate as the
generic kvm stats patches have not yet propagated to kvm-arm/queue) at
the following commit:
8ad5e63649ff ("KVM: Don't take mmu_lock for range invalidation unless necessary")
v1 -> v2:
- Address Jing's comment
- Carry Jing's r-b tag
v1: http://lore.kernel.org/r/20210729195632.489978-1-oupton@google.com
Oliver Upton (3):
KVM: arm64: Record number of signal exits as a vCPU stat
entry: KVM: Allow use of generic KVM entry w/o full generic support
KVM: arm64: Use generic KVM xfer to guest work function
arch/arm64/include/asm/kvm_host.h | 1 +
arch/arm64/kvm/Kconfig | 1 +
arch/arm64/kvm/arm.c | 26 ++++++++++++++------------
arch/arm64/kvm/guest.c | 1 +
include/linux/entry-kvm.h | 6 +++++-
5 files changed, 22 insertions(+), 13 deletions(-)
--
2.32.0.554.ge1b32706d8-goog
Powered by blists - more mailing lists