mbox series

[GIT,PULL] KVM/arm64 fixes for 6.4, take #1

Message ID 20230511143638.350228-1-maz@kernel.org (mailing list archive)
State New, archived
Headers show
Series [GIT,PULL] KVM/arm64 fixes for 6.4, take #1 | expand

Pull-request

git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm.git tags/kvmarm-fixes-6.4-1

Message

Marc Zyngier May 11, 2023, 2:36 p.m. UTC
Paolo,

Here's a first set of fixes, most of which has been simmering in -next
for some time now. The most important one is a series from Oliver,
plugging a (hard to trigger) race that would result in the wrong
mapping being established at S2.

The rest is a bunch of cleanups and HW workarounds (the usual Apple
vgic issue that keeps cropping up on new SoCs).

Please pull,

       M.

The following changes since commit ac9a78681b921877518763ba0e89202254349d1b:

  Linux 6.4-rc1 (2023-05-07 13:34:35 -0700)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm.git tags/kvmarm-fixes-6.4-1

for you to fetch changes up to c3a62df457ff9ac8c77efe6d1eca2855d399355d:

  Merge branch kvm-arm64/pgtable-fixes-6.4 into kvmarm-master/fixes (2023-05-11 15:26:01 +0100)

----------------------------------------------------------------
KVM/arm64 fixes for 6.4, take #1

- Plug a race in the stage-2 mapping code where the IPA and the PA
  would end up being out of sync

- Make better use of the bitmap API (bitmap_zero, bitmap_zalloc...)

- FP/SVE/SME documentation update, in the hope that this field
  becomes clearer...

- Add workaround for the usual Apple SEIS brokenness

- Random comment fixes

----------------------------------------------------------------
Christophe JAILLET (2):
      KVM: arm64: Slightly optimize flush_context()
      KVM: arm64: Use the bitmap API to allocate bitmaps

Jingyu Wang (1):
      KVM: arm64: Fix repeated words in comments

Marc Zyngier (4):
      KVM: arm64: Constify start/end/phys fields of the pgtable walker data
      KVM: arm64: vgic: Add Apple M2 PRO/MAX cpus to the list of broken SEIS implementations
      Merge branch kvm-arm64/misc-6.4 into kvmarm-master/fixes
      Merge branch kvm-arm64/pgtable-fixes-6.4 into kvmarm-master/fixes

Mark Brown (3):
      KVM: arm64: Document check for TIF_FOREIGN_FPSTATE
      KVM: arm64: Restructure check for SVE support in FP trap handler
      KVM: arm64: Clarify host SME state management

Oliver Upton (2):
      KVM: arm64: Infer the PA offset from IPA in stage-2 map walker
      KVM: arm64: Infer PA offset from VA in hyp map walker

 arch/arm64/include/asm/cputype.h        |  8 +++++++
 arch/arm64/include/asm/kvm_pgtable.h    |  1 +
 arch/arm64/kvm/fpsimd.c                 | 26 +++++++++++++--------
 arch/arm64/kvm/hyp/include/hyp/switch.h | 12 ++++++++--
 arch/arm64/kvm/hyp/pgtable.c            | 41 +++++++++++++++++++++++++--------
 arch/arm64/kvm/inject_fault.c           |  2 +-
 arch/arm64/kvm/vgic/vgic-v3.c           |  4 ++++
 arch/arm64/kvm/vmid.c                   |  7 +++---
 8 files changed, 76 insertions(+), 25 deletions(-)

Comments

Paolo Bonzini May 17, 2023, 5:35 p.m. UTC | #1
On Thu, May 11, 2023 at 4:37 PM Marc Zyngier <maz@kernel.org> wrote:
>
> Paolo,
>
> Here's a first set of fixes, most of which has been simmering in -next
> for some time now. The most important one is a series from Oliver,
> plugging a (hard to trigger) race that would result in the wrong
> mapping being established at S2.
>
> The rest is a bunch of cleanups and HW workarounds (the usual Apple
> vgic issue that keeps cropping up on new SoCs).
>
> Please pull,

Done, thanks.

Paolo

> The following changes since commit ac9a78681b921877518763ba0e89202254349d1b:
>
>   Linux 6.4-rc1 (2023-05-07 13:34:35 -0700)
>
> are available in the Git repository at:
>
>   git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm.git tags/kvmarm-fixes-6.4-1
>
> for you to fetch changes up to c3a62df457ff9ac8c77efe6d1eca2855d399355d:
>
>   Merge branch kvm-arm64/pgtable-fixes-6.4 into kvmarm-master/fixes (2023-05-11 15:26:01 +0100)
>
> ----------------------------------------------------------------
> KVM/arm64 fixes for 6.4, take #1
>
> - Plug a race in the stage-2 mapping code where the IPA and the PA
>   would end up being out of sync
>
> - Make better use of the bitmap API (bitmap_zero, bitmap_zalloc...)
>
> - FP/SVE/SME documentation update, in the hope that this field
>   becomes clearer...
>
> - Add workaround for the usual Apple SEIS brokenness
>
> - Random comment fixes
>
> ----------------------------------------------------------------
> Christophe JAILLET (2):
>       KVM: arm64: Slightly optimize flush_context()
>       KVM: arm64: Use the bitmap API to allocate bitmaps
>
> Jingyu Wang (1):
>       KVM: arm64: Fix repeated words in comments
>
> Marc Zyngier (4):
>       KVM: arm64: Constify start/end/phys fields of the pgtable walker data
>       KVM: arm64: vgic: Add Apple M2 PRO/MAX cpus to the list of broken SEIS implementations
>       Merge branch kvm-arm64/misc-6.4 into kvmarm-master/fixes
>       Merge branch kvm-arm64/pgtable-fixes-6.4 into kvmarm-master/fixes
>
> Mark Brown (3):
>       KVM: arm64: Document check for TIF_FOREIGN_FPSTATE
>       KVM: arm64: Restructure check for SVE support in FP trap handler
>       KVM: arm64: Clarify host SME state management
>
> Oliver Upton (2):
>       KVM: arm64: Infer the PA offset from IPA in stage-2 map walker
>       KVM: arm64: Infer PA offset from VA in hyp map walker
>
>  arch/arm64/include/asm/cputype.h        |  8 +++++++
>  arch/arm64/include/asm/kvm_pgtable.h    |  1 +
>  arch/arm64/kvm/fpsimd.c                 | 26 +++++++++++++--------
>  arch/arm64/kvm/hyp/include/hyp/switch.h | 12 ++++++++--
>  arch/arm64/kvm/hyp/pgtable.c            | 41 +++++++++++++++++++++++++--------
>  arch/arm64/kvm/inject_fault.c           |  2 +-
>  arch/arm64/kvm/vgic/vgic-v3.c           |  4 ++++
>  arch/arm64/kvm/vmid.c                   |  7 +++---
>  8 files changed, 76 insertions(+), 25 deletions(-)
>