]> git.ipfire.org Git - thirdparty/linux.git/commit
KVM: SVM: Skip OSVW variable updates if current CPU's errata are a subset
authorSean Christopherson <seanjc@google.com>
Thu, 13 Nov 2025 23:14:19 +0000 (15:14 -0800)
committerSean Christopherson <seanjc@google.com>
Tue, 3 Mar 2026 20:23:26 +0000 (12:23 -0800)
commit3b7a320e491c87c6d25928f6798c2efeef2be0e8
treed691fc72bb5bc9fd86b36bd1c14dc46c552fad8b
parentc65106af8393fe45524b256d7836317a8b3f2c09
KVM: SVM: Skip OSVW variable updates if current CPU's errata are a subset

Elide the OSVW variable updates if the current CPU's set of errata are a
subset of the errata tracked in the global values, i.e. if no update is
needed.  There's no danger of under-reporting errata due to bailing early
as KVM is purely reducing the set of "known fixed" errata.  I.e. a racing
update on a different CPU with _more_ errata doesn't change anything if
the current CPU has the same or fewer errata relative to the status quo.

If another CPU is writing osvw_len, then "len" is guaranteed to be larger
than the new osvw_len and so the osvw_len update would be skipped anyways.

If another CPU is setting new bits in osvw_status, then "status" is
guaranteed to be a subset of the new osvw_status and the bitwise-OR would
be an effective nop anyways.

Link: https://patch.msgid.link/20251113231420.1695919-5-seanjc@google.com
Signed-off-by: Sean Christopherson <seanjc@google.com>
arch/x86/kvm/svm/svm.c