Re: [kvm-devel] [PATCH] KVM: MMU: Fix guest writes to nonpae pde

From: Ingo Molnar
Date: Sun Mar 11 2007 - 06:33:45 EST



* Avi Kivity <avi@xxxxxxxxxxxx> wrote:

> KVM shadow page tables are always in pae mode, regardless of the guest
> setting. This means that a guest pde (mapping 4MB of memory) is
> mapped to two shadow pdes (mapping 2MB each).
>
> When the guest writes to a pte or pde, we intercept the write and
> emulate it. We also remove any shadowed mappings corresponding to the
> write. Since the mmu did not account for the doubling in the number
> of pdes, it removed the wrong entry, resulting in a mismatch between
> shadow page tables and guest page tables, followed shortly by guest
> memory corruption.
>
> This patch fixes the problem by detecting the special case of writing
> to a non-pae pde and adjusting the address and number of shadow pdes
> zapped accordingly.
>
> Signed-off-by: Avi Kivity <avi@xxxxxxxxxxxx>

tested this with both PAE and non-PAE Linux host and guest - works fine.

Acked-by: Ingo Molnar <mingo@xxxxxxx>

Ingo
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/