The xfeatures field in struct fpu_guest is designed to track the enabled xfeatures for guest FPUs. However, during allocation in fpu_alloc_guest_fpstate(), gfpu->xfeatures is initialized to fpu_user_cfg.default_features, while the corresponding fpstate->xfeatures is set to fpu_kernel_cfg.default_features Correct the mismatch to avoid confusion. Note this mismatch does not cause any functional issues. The gfpu->xfeatures is checked in fpu_enable_guest_xfd_features() to verify if XFD features are already enabled: xfeatures &= ~guest_fpu->xfeatures; if (!xfeatures) return 0; It gets updated in fpstate_realloc() after enabling some XFD features: guest_fpu->xfeatures |= xfeatures; So, backport is not needed. Signed-off-by: Chao Gao <chao.gao@xxxxxxxxx> --- arch/x86/kernel/fpu/core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/x86/kernel/fpu/core.c b/arch/x86/kernel/fpu/core.c index dc169f3d336d..6166a928d3f5 100644 --- a/arch/x86/kernel/fpu/core.c +++ b/arch/x86/kernel/fpu/core.c @@ -230,7 +230,7 @@ bool fpu_alloc_guest_fpstate(struct fpu_guest *gfpu) fpstate->is_guest = true; gfpu->fpstate = fpstate; - gfpu->xfeatures = fpu_user_cfg.default_features; + gfpu->xfeatures = fpu_kernel_cfg.default_features; /* * KVM sets the FP+SSE bits in the XSAVE header when copying FPU state -- 2.46.1