lkml.org 
[lkml]   [2020]   [Aug]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: FSGSBASE causing panic on 5.9-rc1
From
Date
On 8/20/20 3:07 PM, Dave Hansen wrote:
> On 8/20/20 12:05 PM, Tom Lendacky wrote:
>>> I added a quick hack to save TSC_AUX to a new variable in the SVM
>>> struct and then restore it right after VMEXIT (just after where GS is
>>> restored in svm_vcpu_enter_exit()) and my guest is no longer crashing.
>>
>> Sorry, I mean my host is no longer crashing.
>
> Just to make sure I've got this:
> 1. Older CPUs didn't have X86_FEATURE_RDPID
> 2. FSGSBASE patches started using RDPID in the NMI entry path when
> supported *AND* FSGSBASE was enabled
> 3. There was a latent SVM bug which did not restore the RDPID data
> before NMIs were reenabled after VMEXIT
> 4. If an NMI comes in the window between VMEXIT and the
> wrmsr(TSC_AUX)... boom

Right, which means that the setting of TSC_AUX to the guest value needs to
be moved, too.

Thanks,
Tom

>
> If FSGSBASE reverted is disabled (as Tom did on the command-line), then
> the RDPID path isn't hit.
>
> Fun.
>

\
 
 \ /
  Last update: 2020-08-20 22:18    [W:4.171 / U:0.164 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site