[PATCH v1 2/4] x86/cpuid: Add a dependency of AVX-IFMA on AVX

From: Guixiong Wei

Date: Tue Aug 11 2026 - 21:54:54 EST


AVX-IFMA is VEX-encoded and operates on the YMM registers, so it depends
on AVX, but it is missing from cpuid_deps[]. As a result, clearing AVX
(e.g. via "clearcpuid=", "noxsave" or the GDS mitigation) leaves AVX-IFMA
set, which KVM then advertises to guests without AVX - an inconsistent
CPUID state that check_cpufeature_deps() does not catch.

Add the missing dependency, following the existing convention that
VEX-encoded/YMM instructions depend on AVX (see AVX-VNNI, VAES and
VPCLMULQDQ).

Fixes: 5e85c4ebf206 ("x86: KVM: Advertise AVX-IFMA CPUID to user space")
Signed-off-by: Guixiong Wei <weiguixiong@xxxxxxxxxxxxx>
---
arch/x86/kernel/cpu/cpuid-deps.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/arch/x86/kernel/cpu/cpuid-deps.c b/arch/x86/kernel/cpu/cpuid-deps.c
index e78d28a43ec7..6b1df617a423 100644
--- a/arch/x86/kernel/cpu/cpuid-deps.c
+++ b/arch/x86/kernel/cpu/cpuid-deps.c
@@ -49,6 +49,7 @@ static const struct cpuid_dep cpuid_deps[] = {
{ X86_FEATURE_FMA, X86_FEATURE_AVX },
{ X86_FEATURE_VAES, X86_FEATURE_AVX },
{ X86_FEATURE_VPCLMULQDQ, X86_FEATURE_AVX },
+ { X86_FEATURE_AVX_IFMA, X86_FEATURE_AVX },
{ X86_FEATURE_AVX2, X86_FEATURE_AVX, },
{ X86_FEATURE_AVX512F, X86_FEATURE_AVX, },
{ X86_FEATURE_AVX512IFMA, X86_FEATURE_AVX512F },
--
2.50.1 (Apple Git-155)