On 11/8/22 21:54, Sean Christopherson wrote:
On Tue, Nov 08, 2022, Paolo Bonzini wrote:
Since registers are reachable through vcpu_svm, and we will need to access more fields of that struct, pass it instead of the regs[] array.
No functional change intended.
Cc: stable@vger.kernel.org Fixes: f14eec0a3203 ("KVM: SVM: move more vmentry code to assembly")
I don't think a Fixes: tag for a pure nop patch is fair to the original commit.
That's for the sake of correct tracking in stable@, still it's not the right commit to point at:
- f14eec0a3203 did not move the RSB stuffing before the GSBASE restore, the code before was:
vmexit_fill_RSB(); #ifdef CONFIG_X86_64 wrmsrl(MSR_GS_BASE, svm->host.gs_base); #else
- anyway it wasn't really buggy at the time: it's only in -next that FILL_RETURN_BUFFER uses percpu data, because alternatives take care of the X86_FEATURE_* checks
The real reason to do all this is to access the percpu host spec_ctrl, which in turn is needed for retbleed. I'll point the Fixes tag to a149180fbcf3 ("x86: Add magic AMD return-thunk") instead, again just for the sake of tracking releases that need the change to full fix retbleed.
Paolo