Re: [PATCH v6 2/3] x86/tdx: Fix arch_safe_halt() execution for TDX VMs

From: kernel test robot
Date: Thu Feb 27 2025 - 11:36:19 EST


Hi Vishal,

kernel test robot noticed the following build errors:

[auto build test ERROR on tip/x86/core]
[also build test ERROR on tip/master linus/master v6.14-rc4 next-20250227]
[cannot apply to tip/x86/tdx tip/auto-latest]
[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#_base_tree_information]

url: https://github.com/intel-lab-lkp/linux/commits/Vishal-Annapurve/x86-paravirt-Move-halt-paravirt-calls-under-CONFIG_PARAVIRT/20250225-085043
base: tip/x86/core
patch link: https://lore.kernel.org/r/20250225004704.603652-3-vannapurve%40google.com
patch subject: [PATCH v6 2/3] x86/tdx: Fix arch_safe_halt() execution for TDX VMs
config: i386-buildonly-randconfig-003-20250227 (https://download.01.org/0day-ci/archive/20250227/202502272346.iiQ6Dptt-lkp@xxxxxxxxx/config)
compiler: clang version 19.1.7 (https://github.com/llvm/llvm-project cd708029e0b2869e80abe31ddb175f7c35361f90)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250227/202502272346.iiQ6Dptt-lkp@xxxxxxxxx/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202502272346.iiQ6Dptt-lkp@xxxxxxxxx/

All errors (new ones prefixed by >>):

In file included from arch/x86/kernel/process.c:6:
In file included from include/linux/mm.h:2224:
include/linux/vmstat.h:504:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
504 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
505 | item];
| ~~~~
include/linux/vmstat.h:511:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
511 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
512 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
>> arch/x86/kernel/process.c:937:32: error: use of undeclared identifier 'tdx_halt'; did you mean 'tdx_init'?
937 | static_call_update(x86_idle, tdx_halt);
| ^~~~~~~~
| tdx_init
include/linux/static_call.h:154:42: note: expanded from macro 'static_call_update'
154 | typeof(&STATIC_CALL_TRAMP(name)) __F = (func); \
| ^
arch/x86/include/asm/tdx.h:123:20: note: 'tdx_init' declared here
123 | static inline void tdx_init(void) { }
| ^
2 warnings and 1 error generated.


vim +937 arch/x86/kernel/process.c

919
920 void __init select_idle_routine(void)
921 {
922 if (boot_option_idle_override == IDLE_POLL) {
923 if (IS_ENABLED(CONFIG_SMP) && __max_threads_per_core > 1)
924 pr_warn_once("WARNING: polling idle and HT enabled, performance may degrade\n");
925 return;
926 }
927
928 /* Required to guard against xen_set_default_idle() */
929 if (x86_idle_set())
930 return;
931
932 if (prefer_mwait_c1_over_halt()) {
933 pr_info("using mwait in idle threads\n");
934 static_call_update(x86_idle, mwait_idle);
935 } else if (cpu_feature_enabled(X86_FEATURE_TDX_GUEST)) {
936 pr_info("using TDX aware idle routine\n");
> 937 static_call_update(x86_idle, tdx_halt);
938 } else {
939 static_call_update(x86_idle, default_idle);
940 }
941 }
942

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki