Hi Kai, I love your patch! Yet something to improve: [auto build test ERROR on kvm/queue] [also build test ERROR on next-20210409] [cannot apply to vhost/linux-next v5.12-rc7] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Kai-Huang/KVM-SGX-virtualization-support-KVM-part/20210412-122425 base: https://git.kernel.org/pub/scm/virt/kvm/kvm.git queue config: x86_64-rhel-8.3-kselftests (attached as .config) compiler: gcc-9 (Debian 9.3.0-22) 9.3.0 reproduce (this is a W=1 build): # https://github.com/0day-ci/linux/commit/66e235131b59a03ed48f6f6343de43ba9786e32d git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Kai-Huang/KVM-SGX-virtualization-support-KVM-part/20210412-122425 git checkout 66e235131b59a03ed48f6f6343de43ba9786e32d # save the attached .config to linux build tree make W=1 ARCH=x86_64 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All errors (new ones prefixed by >>): In file included from arch/x86/kvm/cpuid.c:22: arch/x86/kvm/cpuid.h: In function '__feature_translate': arch/x86/kvm/cpuid.h:128:21: error: 'X86_FEATURE_SGX1' undeclared (first use in this function); did you mean 'X86_FEATURE_SGX'? 128 | if (x86_feature == X86_FEATURE_SGX1) | ^~~~~~~~~~~~~~~~ | X86_FEATURE_SGX arch/x86/kvm/cpuid.h:128:21: note: each undeclared identifier is reported only once for each function it appears in arch/x86/kvm/cpuid.h:130:26: error: 'X86_FEATURE_SGX2' undeclared (first use in this function); did you mean 'X86_FEATURE_SGX'? 130 | else if (x86_feature == X86_FEATURE_SGX2) | ^~~~~~~~~~~~~~~~ | X86_FEATURE_SGX In file included from arch/x86/include/asm/thread_info.h:53, from include/linux/thread_info.h:58, from arch/x86/include/asm/preempt.h:7, from include/linux/preempt.h:78, from include/linux/percpu.h:6, from include/linux/context_tracking_state.h:5, from include/linux/hardirq.h:5, from include/linux/kvm_host.h:7, from arch/x86/kvm/cpuid.c:12: arch/x86/kvm/cpuid.c: In function 'kvm_set_cpu_caps': >> arch/x86/kvm/cpuid.c:57:32: error: 'X86_FEATURE_SGX1' undeclared (first use in this function); did you mean 'X86_FEATURE_SGX'? 57 | #define SF(name) (boot_cpu_has(X86_FEATURE_##name) ? F(name) : 0) | ^~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:121:24: note: in definition of macro 'cpu_has' 121 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~ arch/x86/kvm/cpuid.c:57:19: note: in expansion of macro 'boot_cpu_has' 57 | #define SF(name) (boot_cpu_has(X86_FEATURE_##name) ? F(name) : 0) | ^~~~~~~~~~~~ arch/x86/kvm/cpuid.c:500:3: note: in expansion of macro 'SF' 500 | SF(SGX1) | SF(SGX2) | ^~ >> arch/x86/kvm/cpuid.c:57:32: error: 'X86_FEATURE_SGX2' undeclared (first use in this function); did you mean 'X86_FEATURE_SGX'? 57 | #define SF(name) (boot_cpu_has(X86_FEATURE_##name) ? F(name) : 0) | ^~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:121:24: note: in definition of macro 'cpu_has' 121 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~ arch/x86/kvm/cpuid.c:57:19: note: in expansion of macro 'boot_cpu_has' 57 | #define SF(name) (boot_cpu_has(X86_FEATURE_##name) ? F(name) : 0) | ^~~~~~~~~~~~ arch/x86/kvm/cpuid.c:500:14: note: in expansion of macro 'SF' 500 | SF(SGX1) | SF(SGX2) | ^~ arch/x86/kvm/cpuid.c: In function '__do_cpuid_func': >> arch/x86/kvm/cpuid.c:838:17: error: 'SGX_MISC_EXINFO' undeclared (first use in this function) 838 | entry->ebx &= SGX_MISC_EXINFO; | ^~~~~~~~~~~~~~~ >> arch/x86/kvm/cpuid.c:851:17: error: 'SGX_ATTR_DEBUG' undeclared (first use in this function) 851 | entry->eax &= SGX_ATTR_DEBUG | SGX_ATTR_MODE64BIT | | ^~~~~~~~~~~~~~ >> arch/x86/kvm/cpuid.c:851:34: error: 'SGX_ATTR_MODE64BIT' undeclared (first use in this function) 851 | entry->eax &= SGX_ATTR_DEBUG | SGX_ATTR_MODE64BIT | | ^~~~~~~~~~~~~~~~~~ >> arch/x86/kvm/cpuid.c:852:31: error: 'SGX_ATTR_EINITTOKENKEY' undeclared (first use in this function) 852 | /* PROVISIONKEY | */ SGX_ATTR_EINITTOKENKEY | | ^~~~~~~~~~~~~~~~~~~~~~ >> arch/x86/kvm/cpuid.c:853:10: error: 'SGX_ATTR_KSS' undeclared (first use in this function) 853 | SGX_ATTR_KSS; | ^~~~~~~~~~~~ -- In file included from arch/x86/kvm/vmx/vmx.c:51: arch/x86/kvm/cpuid.h: In function '__feature_translate': arch/x86/kvm/cpuid.h:128:21: error: 'X86_FEATURE_SGX1' undeclared (first use in this function); did you mean 'X86_FEATURE_SGX'? 128 | if (x86_feature == X86_FEATURE_SGX1) | ^~~~~~~~~~~~~~~~ | X86_FEATURE_SGX arch/x86/kvm/cpuid.h:128:21: note: each undeclared identifier is reported only once for each function it appears in arch/x86/kvm/cpuid.h:130:26: error: 'X86_FEATURE_SGX2' undeclared (first use in this function); did you mean 'X86_FEATURE_SGX'? 130 | else if (x86_feature == X86_FEATURE_SGX2) | ^~~~~~~~~~~~~~~~ | X86_FEATURE_SGX arch/x86/kvm/vmx/vmx.c: In function 'vmx_set_cpu_caps': >> arch/x86/kvm/vmx/vmx.c:7375:21: error: 'X86_FEATURE_SGX1' undeclared (first use in this function); did you mean 'X86_FEATURE_SGX'? 7375 | kvm_cpu_cap_clear(X86_FEATURE_SGX1); | ^~~~~~~~~~~~~~~~ | X86_FEATURE_SGX >> arch/x86/kvm/vmx/vmx.c:7376:21: error: 'X86_FEATURE_SGX2' undeclared (first use in this function); did you mean 'X86_FEATURE_SGX'? 7376 | kvm_cpu_cap_clear(X86_FEATURE_SGX2); | ^~~~~~~~~~~~~~~~ | X86_FEATURE_SGX vim +57 arch/x86/kvm/cpuid.c 4344ee981e2199 Paolo Bonzini 2013-10-02 55 87382003e35559 Sean Christopherson 2019-12-17 56 #define F feature_bit cb4de96e0cca64 Sean Christopherson 2021-04-12 @57 #define SF(name) (boot_cpu_has(X86_FEATURE_##name) ? F(name) : 0) 5c404cabd1b5c1 Paolo Bonzini 2014-12-03 58 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org