[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <176227794415.3934259.3450243632077976793.b4-ty@google.com>
Date: Tue, 4 Nov 2025 09:45:00 -0800
From: Sean Christopherson <seanjc@...gle.com>
To: Sean Christopherson <seanjc@...gle.com>, Paolo Bonzini <pbonzini@...hat.com>
Cc: kvm@...r.kernel.org, linux-kernel@...r.kernel.org,
Alexander Potapenko <glider@...gle.com>
Subject: Re: [PATCH 0/2] KVM: x86: Fix an FPU+CET splat
On Thu, 30 Oct 2025 11:58:00 -0700, Sean Christopherson wrote:
> Fix a explosion found via syzkaller+KASAN where KVM attempts to "put" an
> FPU without first having loading the FPU. The underlying problem is the
> ugly hack for dealing with INIT being processed during MP_STATE.
>
> KVM needs to ensure the FPU state is resident in memory in order to clear
> MPX and CET state. In most cases, INIT is emulated during KVM_RUN, and so
> KVM needs to put the FPU. But for MP_STATE, the FPU doesn't need to be
> loaded, and so isn't. Except when KVM predicts that the FPU will be
> unloaded. CET enabling updated the "put" path but missed the prediction
> logic in MP_STATE.
>
> [...]
Applied to kvm-x86 fixes, thanks!
[1/2] KVM: x86: Unload "FPU" state on INIT if and only if its currently in-use
https://github.com/kvm-x86/linux/commit/8819a49f9ff8
[2/2] KVM: x86: Harden KVM against imbalanced load/put of guest FPU state
https://github.com/kvm-x86/linux/commit/9bc610b6a2a7
--
https://github.com/kvm-x86/linux/tree/next
Powered by blists - more mailing lists