Hi Paolo, Obviously this series requires x86 part patches (which is on tip/x86/sgx) to work. Please let me know how do you want to proceed? On Mon, 2021-04-12 at 17:51 +0800, kernel test robot wrote: > 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 <lkp@xxxxxxxxx> > > 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@xxxxxxxxxxxx