Re: [PATCH v4 1/5] hyperv: Define struct hv_output_get_vp_registers

From: kernel test robot
Date: Fri Dec 27 2024 - 17:53:08 EST


Hi Roman,

kernel test robot noticed the following build errors:

[auto build test ERROR on 26e1b813fcd02984b1cac5f3decdf4b0bb56fe02]

url: https://github.com/intel-lab-lkp/linux/commits/Roman-Kisel/hyperv-Define-struct-hv_output_get_vp_registers/20241228-023454
base: 26e1b813fcd02984b1cac5f3decdf4b0bb56fe02
patch link: https://lore.kernel.org/r/20241227183155.122827-2-romank%40linux.microsoft.com
patch subject: [PATCH v4 1/5] hyperv: Define struct hv_output_get_vp_registers
config: arm64-randconfig-001-20241228 (https://download.01.org/0day-ci/archive/20241228/202412280604.2Fvp7M4m-lkp@xxxxxxxxx/config)
compiler: aarch64-linux-gcc (GCC) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241228/202412280604.2Fvp7M4m-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/202412280604.2Fvp7M4m-lkp@xxxxxxxxx/

All errors (new ones prefixed by >>):

In file included from include/hyperv/hvhdk_mini.h:8,
from include/hyperv/hvhdk.h:10,
from arch/arm64/hyperv/hv_core.c:17:
>> include/hyperv/hvgdk_mini.h:828:40: error: field 'cs' has incomplete type
828 | struct hv_x64_segment_register cs;
| ^~
>> include/hyperv/hvgdk_mini.h:829:40: error: field 'ds' has incomplete type
829 | struct hv_x64_segment_register ds;
| ^~
>> include/hyperv/hvgdk_mini.h:830:40: error: field 'es' has incomplete type
830 | struct hv_x64_segment_register es;
| ^~
>> include/hyperv/hvgdk_mini.h:831:40: error: field 'fs' has incomplete type
831 | struct hv_x64_segment_register fs;
| ^~
>> include/hyperv/hvgdk_mini.h:832:40: error: field 'gs' has incomplete type
832 | struct hv_x64_segment_register gs;
| ^~
>> include/hyperv/hvgdk_mini.h:833:40: error: field 'ss' has incomplete type
833 | struct hv_x64_segment_register ss;
| ^~
>> include/hyperv/hvgdk_mini.h:834:40: error: field 'tr' has incomplete type
834 | struct hv_x64_segment_register tr;
| ^~
>> include/hyperv/hvgdk_mini.h:835:40: error: field 'ldtr' has incomplete type
835 | struct hv_x64_segment_register ldtr;
| ^~~~
>> include/hyperv/hvgdk_mini.h:837:38: error: field 'idtr' has incomplete type
837 | struct hv_x64_table_register idtr;
| ^~~~
>> include/hyperv/hvgdk_mini.h:838:38: error: field 'gdtr' has incomplete type
838 | struct hv_x64_table_register gdtr;
| ^~~~
>> include/hyperv/hvhdk.h:78:56: error: field 'es' has incomplete type
78 | struct hv_x64_segment_register es;
| ^~
>> include/hyperv/hvhdk.h:79:56: error: field 'cs' has incomplete type
79 | struct hv_x64_segment_register cs;
| ^~
>> include/hyperv/hvhdk.h:80:56: error: field 'ss' has incomplete type
80 | struct hv_x64_segment_register ss;
| ^~
>> include/hyperv/hvhdk.h:81:56: error: field 'ds' has incomplete type
81 | struct hv_x64_segment_register ds;
| ^~
>> include/hyperv/hvhdk.h:82:56: error: field 'fs' has incomplete type
82 | struct hv_x64_segment_register fs;
| ^~
>> include/hyperv/hvhdk.h:83:56: error: field 'gs' has incomplete type
83 | struct hv_x64_segment_register gs;
| ^~
>> include/hyperv/hvhdk.h:86:48: error: array type has incomplete element type 'struct hv_x64_segment_register'
86 | struct hv_x64_segment_register segment_registers[6];
| ^~~~~~~~~~~~~~~~~
>> include/hyperv/hvhdk.h:95:52: error: field 'pending_interruption' has incomplete type
95 | union hv_x64_pending_interruption_register pending_interruption;
| ^~~~~~~~~~~~~~~~~~~~
>> include/hyperv/hvhdk.h:96:47: error: field 'interrupt_state' has incomplete type
96 | union hv_x64_interrupt_state_register interrupt_state;
| ^~~~~~~~~~~~~~~


vim +/cs +828 include/hyperv/hvgdk_mini.h

dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 822
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 823 struct hv_init_vp_context {
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 824 u64 rip;
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 825 u64 rsp;
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 826 u64 rflags;
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 827
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 @828 struct hv_x64_segment_register cs;
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 @829 struct hv_x64_segment_register ds;
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 @830 struct hv_x64_segment_register es;
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 @831 struct hv_x64_segment_register fs;
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 @832 struct hv_x64_segment_register gs;
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 @833 struct hv_x64_segment_register ss;
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 @834 struct hv_x64_segment_register tr;
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 @835 struct hv_x64_segment_register ldtr;
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 836
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 @837 struct hv_x64_table_register idtr;
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 @838 struct hv_x64_table_register gdtr;
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 839
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 840 u64 efer;
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 841 u64 cr0;
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 842 u64 cr3;
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 843 u64 cr4;
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 844 u64 msr_cr_pat;
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 845 } __packed;
dd4f3a2b21ac14 Nuno Das Neves 2024-11-25 846

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