diff options
author | Zhao Liu <zhao1.liu@intel.com> | 2024-07-30 12:55:44 +0800 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2024-07-31 13:13:31 +0200 |
commit | ada1f3cab32a4eded6a453c2e22fc897009da555 (patch) | |
tree | 889f09ea17d0385b493249a357bf69f376a7475d /target | |
parent | 3722a98948d4fedec7a8c4575f520b346b6bc923 (diff) |
target/i386/cpu: Mask off SGX/SGX_LC feature words for non-PC machine
Only PC machine supports SGX, so mask off SGX related feature words for
non-PC machine (microvm).
Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20240730045544.2516284-5-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'target')
-rw-r--r-- | target/i386/cpu.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/target/i386/cpu.c b/target/i386/cpu.c index 28b46ef536..85ef7452c0 100644 --- a/target/i386/cpu.c +++ b/target/i386/cpu.c @@ -6103,6 +6103,21 @@ uint64_t x86_cpu_get_supported_feature_word(X86CPU *cpu, FeatureWord w) } break; + case FEAT_7_0_EBX: +#ifndef CONFIG_USER_ONLY + if (!check_sgx_support()) { + unavail = CPUID_7_0_EBX_SGX; + } +#endif + break; + case FEAT_7_0_ECX: +#ifndef CONFIG_USER_ONLY + if (!check_sgx_support()) { + unavail = CPUID_7_0_ECX_SGX_LC; + } +#endif + break; + default: break; } |