Re: [PATCH 5.10 096/126] KVM: x86/mmu: Use atomic ops to set SPTEs in TDP MMU map

From: Sasha Levin
Date: Tue Apr 06 2021 - 09:49:51 EST


On Tue, Apr 06, 2021 at 08:09:26AM +0200, Paolo Bonzini wrote:
On 05/04/21 10:54, Greg Kroah-Hartman wrote:
From: Ben Gardon <bgardon@xxxxxxxxxx>

[ Upstream commit 9a77daacc87dee9fd63e31243f21894132ed8407 ]

To prepare for handling page faults in parallel, change the TDP MMU
page fault handler to use atomic operations to set SPTEs so that changes
are not lost if multiple threads attempt to modify the same SPTE.

Reviewed-by: Peter Feiner <pfeiner@xxxxxxxxxx>
Signed-off-by: Ben Gardon <bgardon@xxxxxxxxxx>

Whoa no, you have included basically a whole new feature, except for the final patch that actually enables the feature. The whole new MMU

Right, we would usually grab dependencies rather than modifying the
patch. It means we diverge less with upstream, and custom backports tend
to be buggier than just grabbing dependencies.

is still not meant to be used in production and development is still happening as of 5.13.

Unrelated to this disucssion, but how are folks supposed to know which
feature can and which feature can't be used in production? If it's a
released kernel, in theory anyone can pick up 5.12 and use it in
production.

Were all these patches (82-97) included just to enable patch 98 ("KVM: x86/mmu: Ensure TLBs are flushed for TDP MMU during NX zapping")? Same for 105-120 in 5.11.

Yup. Is there anything wrong with those patches?

--
Thanks,
Sasha