]> git.baikalelectronics.ru Git - kernel.git/commit
KVM: arm64: vgic-its: Change default outer cacheability for {PEND, PROP}BASER
authorAlexander Graf <graf@amazon.com>
Wed, 1 Jul 2020 14:02:06 +0000 (16:02 +0200)
committerMarc Zyngier <maz@kernel.org>
Sun, 5 Jul 2020 18:15:34 +0000 (19:15 +0100)
commita9d69bcf2780ef18d1c1b4859afc1ccf19c11df6
tree775100c41586da8f74b890678b7b50a3308968cd
parentf53994a96e69138ad4af978cbeda9e0429f53dd9
KVM: arm64: vgic-its: Change default outer cacheability for {PEND, PROP}BASER

PENDBASER and PROPBASER define the outer caching mode for LPI tables.
The memory backing them may not be outer sharable, so we mark them as nC
by default. This however, breaks Windows on ARM which only accepts
SameAsInner or RaWaWb as values for outer cachability.

We do today already allow the outer mode to be set to SameAsInner
explicitly, so the easy fix is to default to that instead of nC for
situations when an OS asks for a not fulfillable cachability request.

This fixes booting Windows in KVM with vgicv3 and ITS enabled for me.

Signed-off-by: Alexander Graf <graf@amazon.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20200701140206.8664-1-graf@amazon.com
arch/arm64/kvm/vgic/vgic-mmio-v3.c