]> Gentwo Git Trees - linux/.git/commit
KVM: arm64: Fix S1/S2 combination when FWB==1 and S2 has Device memory type
authorMarc Zyngier <maz@kernel.org>
Mon, 25 Nov 2024 09:47:56 +0000 (09:47 +0000)
committerOliver Upton <oliver.upton@linux.dev>
Tue, 26 Nov 2024 15:32:27 +0000 (07:32 -0800)
commit6fc3a49f23856fdf155ab35f2244295f7870bf83
treebfc95fcc887778a31f13bf5e3381e2023ff05d0c
parentd798bc6f3c174c61837862cb9778d73cccd92a8e
KVM: arm64: Fix S1/S2 combination when FWB==1 and S2 has Device memory type

The G.a revision of the ARM ARM had it pretty clear that HCR_EL2.FWB
had no influence on "The way that stage 1 memory types and attributes
are combined with stage 2 Device type and attributes." (D5.5.5).

However, this wording was lost in further revisions of the architecture.

Restore the intended behaviour, which is to take the strongest memory
type of S1 and S2 in this case, as if FWB was 0. The specification is
being fixed accordingly.

Fixes: be04cebf3e788 ("KVM: arm64: nv: Add emulation of AT S12E{0,1}{R,W}")
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20241125094756.609590-1-maz@kernel.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
arch/arm64/kvm/at.c