* [GIT PULL] KVM/arm64: First batch of fixes for 6.15
@ 2025-04-08 0:31 Oliver Upton
2025-04-08 10:01 ` Paolo Bonzini
0 siblings, 1 reply; 2+ messages in thread
From: Oliver Upton @ 2025-04-08 0:31 UTC (permalink / raw)
To: Paolo Bonzini
Cc: Marc Zyngier, kvmarm, kvm, Raghavendra Rao Ananta, Will Deacon
Hi Paolo,
Here's the first set of fixes for 6.15. The biggest change here is the
__get_fault_info() rework where KVM could use stale fault information when
handling a stage-2 abort.
Rest of the details can be found in the tag. Please pull.
Thanks,
Oliver
The following changes since commit 369c0122682c4468a69f2454614eded71c5348f3:
Merge branch 'kvm-arm64/pmu-fixes' into kvmarm/next (2025-03-19 14:54:52 -0700)
are available in the Git repository at:
https://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm.git/ tags/kvmarm-fixes-6.15-1
for you to fetch changes up to a344e258acb0a7f0e7ed10a795c52d1baf705164:
KVM: arm64: Use acquire/release to communicate FF-A version negotiation (2025-04-07 15:03:34 -0700)
----------------------------------------------------------------
KVM/arm64: First batch of fixes for 6.15
- Rework heuristics for resolving the fault IPA (HPFAR_EL2 v. re-walk
stage-1 page tables) to align with the architecture. This avoids
possibly taking an SEA at EL2 on the page table walk or using an
architecturally UNKNOWN fault IPA.
- Use acquire/release semantics in the KVM FF-A proxy to avoid reading
a stale value for the FF-A version.
- Fix KVM guest driver to match PV CPUID hypercall ABI.
- Use Inner Shareable Normal Write-Back mappings at stage-1 in KVM
selftests, which is the only memory type for which atomic
instructions are architecturally guaranteed to work.
----------------------------------------------------------------
Chen Ni (1):
smccc: kvm_guest: Remove unneeded semicolon
Oliver Upton (4):
smccc: kvm_guest: Align with DISCOVER_IMPL_CPUS ABI
KVM: arm64: Only read HPFAR_EL2 when value is architecturally valid
arm64: Convert HPFAR_EL2 to sysreg table
KVM: arm64: Don't translate FAR if invalid/unsafe
Raghavendra Rao Ananta (2):
KVM: arm64: selftests: Introduce and use hardware-definition macros
KVM: arm64: selftests: Explicitly set the page attrs to Inner-Shareable
Will Deacon (1):
KVM: arm64: Use acquire/release to communicate FF-A version negotiation
arch/arm64/include/asm/esr.h | 44 +++++++++++++-
arch/arm64/include/asm/kvm_emulate.h | 7 ++-
arch/arm64/include/asm/kvm_ras.h | 2 +-
arch/arm64/kvm/hyp/include/hyp/fault.h | 70 +++++++++++++++-------
arch/arm64/kvm/hyp/nvhe/ffa.c | 9 +--
arch/arm64/kvm/hyp/nvhe/mem_protect.c | 9 ++-
arch/arm64/kvm/mmu.c | 31 ++++++----
arch/arm64/tools/sysreg | 7 +++
drivers/firmware/smccc/kvm_guest.c | 4 +-
.../testing/selftests/kvm/arm64/page_fault_test.c | 2 +-
.../selftests/kvm/include/arm64/processor.h | 67 +++++++++++++++++++--
tools/testing/selftests/kvm/lib/arm64/processor.c | 60 +++++++++++--------
12 files changed, 234 insertions(+), 78 deletions(-)
^ permalink raw reply [flat|nested] 2+ messages in thread* Re: [GIT PULL] KVM/arm64: First batch of fixes for 6.15
2025-04-08 0:31 [GIT PULL] KVM/arm64: First batch of fixes for 6.15 Oliver Upton
@ 2025-04-08 10:01 ` Paolo Bonzini
0 siblings, 0 replies; 2+ messages in thread
From: Paolo Bonzini @ 2025-04-08 10:01 UTC (permalink / raw)
To: Oliver Upton
Cc: Marc Zyngier, kvmarm, kvm, Raghavendra Rao Ananta, Will Deacon
On Tue, Apr 8, 2025 at 2:32 AM Oliver Upton <oliver.upton@linux.dev> wrote:
>
> Hi Paolo,
>
> Here's the first set of fixes for 6.15. The biggest change here is the
> __get_fault_info() rework where KVM could use stale fault information when
> handling a stage-2 abort.
>
> Rest of the details can be found in the tag. Please pull.
Done, thanks.
Paolo
> Thanks,
> Oliver
>
> The following changes since commit 369c0122682c4468a69f2454614eded71c5348f3:
>
> Merge branch 'kvm-arm64/pmu-fixes' into kvmarm/next (2025-03-19 14:54:52 -0700)
>
> are available in the Git repository at:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm.git/ tags/kvmarm-fixes-6.15-1
>
> for you to fetch changes up to a344e258acb0a7f0e7ed10a795c52d1baf705164:
>
> KVM: arm64: Use acquire/release to communicate FF-A version negotiation (2025-04-07 15:03:34 -0700)
>
> ----------------------------------------------------------------
> KVM/arm64: First batch of fixes for 6.15
>
> - Rework heuristics for resolving the fault IPA (HPFAR_EL2 v. re-walk
> stage-1 page tables) to align with the architecture. This avoids
> possibly taking an SEA at EL2 on the page table walk or using an
> architecturally UNKNOWN fault IPA.
>
> - Use acquire/release semantics in the KVM FF-A proxy to avoid reading
> a stale value for the FF-A version.
>
> - Fix KVM guest driver to match PV CPUID hypercall ABI.
>
> - Use Inner Shareable Normal Write-Back mappings at stage-1 in KVM
> selftests, which is the only memory type for which atomic
> instructions are architecturally guaranteed to work.
>
> ----------------------------------------------------------------
> Chen Ni (1):
> smccc: kvm_guest: Remove unneeded semicolon
>
> Oliver Upton (4):
> smccc: kvm_guest: Align with DISCOVER_IMPL_CPUS ABI
> KVM: arm64: Only read HPFAR_EL2 when value is architecturally valid
> arm64: Convert HPFAR_EL2 to sysreg table
> KVM: arm64: Don't translate FAR if invalid/unsafe
>
> Raghavendra Rao Ananta (2):
> KVM: arm64: selftests: Introduce and use hardware-definition macros
> KVM: arm64: selftests: Explicitly set the page attrs to Inner-Shareable
>
> Will Deacon (1):
> KVM: arm64: Use acquire/release to communicate FF-A version negotiation
>
> arch/arm64/include/asm/esr.h | 44 +++++++++++++-
> arch/arm64/include/asm/kvm_emulate.h | 7 ++-
> arch/arm64/include/asm/kvm_ras.h | 2 +-
> arch/arm64/kvm/hyp/include/hyp/fault.h | 70 +++++++++++++++-------
> arch/arm64/kvm/hyp/nvhe/ffa.c | 9 +--
> arch/arm64/kvm/hyp/nvhe/mem_protect.c | 9 ++-
> arch/arm64/kvm/mmu.c | 31 ++++++----
> arch/arm64/tools/sysreg | 7 +++
> drivers/firmware/smccc/kvm_guest.c | 4 +-
> .../testing/selftests/kvm/arm64/page_fault_test.c | 2 +-
> .../selftests/kvm/include/arm64/processor.h | 67 +++++++++++++++++++--
> tools/testing/selftests/kvm/lib/arm64/processor.c | 60 +++++++++++--------
> 12 files changed, 234 insertions(+), 78 deletions(-)
>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-04-08 10:01 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-04-08 0:31 [GIT PULL] KVM/arm64: First batch of fixes for 6.15 Oliver Upton
2025-04-08 10:01 ` Paolo Bonzini
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox