]> www.infradead.org Git - users/jedix/linux-maple.git/commit
KVM: SVM: Don't rely on DebugSwap to restore host DR0..DR3
authorSean Christopherson <seanjc@google.com>
Thu, 27 Feb 2025 01:25:33 +0000 (17:25 -0800)
committerSean Christopherson <seanjc@google.com>
Mon, 3 Mar 2025 15:26:39 +0000 (07:26 -0800)
commit807cb9ce2ed9a1b6e79e70fb2cdb7860f1517dcc
treef2382123f4e0b9fe08d3d9ec65b7599b5d471667
parentb2653cd3b75f62f29b72df4070e20357acb52bc4
KVM: SVM: Don't rely on DebugSwap to restore host DR0..DR3

Never rely on the CPU to restore/load host DR0..DR3 values, even if the
CPU supports DebugSwap, as there are no guarantees that SNP guests will
actually enable DebugSwap on APs.  E.g. if KVM were to rely on the CPU to
load DR0..DR3 and skipped them during hw_breakpoint_restore(), KVM would
run with clobbered-to-zero DRs if an SNP guest created APs without
DebugSwap enabled.

Update the comment to explain the dangers, and hopefully prevent breaking
KVM in the future.

Reviewed-by: Tom Lendacky <thomas.lendacky@amd.com>
Link: https://lore.kernel.org/r/20250227012541.3234589-3-seanjc@google.com
Signed-off-by: Sean Christopherson <seanjc@google.com>
arch/x86/kvm/svm/sev.c