Re: [PATCH AUTOSEL 5.0 29/98] KVM: arm/arm64: Enforce PTE mappings at stage2 when needed

From: Sasha Levin
Date: Thu May 02 2019 - 08:57:11 EST

On Tue, Apr 23, 2019 at 10:27:26AM +0100, Suzuki K Poulose wrote:
Hi Sasha,

On 04/22/2019 08:40 PM, Sasha Levin wrote:
From: Suzuki K Poulose <suzuki.poulose@xxxxxxx>

[ Upstream commit a80868f398554842b14d07060012c06efb57c456 ]

commit 6794ad5443a2118 ("KVM: arm/arm64: Fix unintended stage 2 PMD mappings")
made the checks to skip huge mappings, stricter. However it introduced
a bug where we still use huge mappings, ignoring the flag to
use PTE mappings, by not reseting the vma_pagesize to PAGE_SIZE.

Also, the checks do not cover the PUD huge pages, that was
under review during the same period. This patch fixes both
the issues.

Fixes : 6794ad5443a2118 ("KVM: arm/arm64: Fix unintended stage 2 PMD mappings")
Reported-by: Zenghui Yu <yuzenghui@xxxxxxxxxx>
Cc: Zenghui Yu <yuzenghui@xxxxxxxxxx>
Cc: Christoffer Dall <christoffer.dall@xxxxxxx>
Signed-off-by: Suzuki K Poulose <suzuki.poulose@xxxxxxx>
Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>
Signed-off-by: Sasha Levin (Microsoft) <sashal@xxxxxxxxxx>

Please be aware that we need a follow up fix for this patch to fix the
problem for THP backed memory.

It should appear upstream soon.

Since it's not upstream yet, I'll drop this patch for now and queue it
for a later release.