Hi Fuad, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on c500bee1c5b2f1d59b1081ac879d73268ab0ff17] url: https://github.com/0day-ci/linux/commits/Fuad-Tabba/KVM-arm64-Fixed-features-for-protected-VMs/20210817-161500 base: c500bee1c5b2f1d59b1081ac879d73268ab0ff17 config: arm64-allyesconfig (attached as .config) compiler: aarch64-linux-gcc (GCC) 11.2.0 reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://github.com/0day-ci/linux/commit/c05d33084d216fbdd94a7165aa6e93fd7517e0d8 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Fuad-Tabba/KVM-arm64-Fixed-features-for-protected-VMs/20210817-161500 git checkout c05d33084d216fbdd94a7165aa6e93fd7517e0d8 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross ARCH=arm64 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All warnings (new ones prefixed by >>): In file included from include/uapi/linux/posix_types.h:5, from include/uapi/linux/types.h:14, from include/linux/types.h:6, from include/linux/kvm_host.h:6, from arch/arm64/include/asm/kvm_emulate.h:14, from arch/arm64/kvm/hyp/include/hyp/adjust_pc.h:13, from arch/arm64/kvm/hyp/include/hyp/switch.h:10, from arch/arm64/kvm/hyp/nvhe/switch.c:7: include/linux/stddef.h:8:14: warning: initialized field overwritten [-Woverride-init] 8 | #define NULL ((void *)0) | ^ arch/arm64/kvm/hyp/nvhe/switch.c:163:43: note: in expansion of macro 'NULL' 163 | [ESR_ELx_EC_WFx] = NULL, | ^~~~ include/linux/stddef.h:8:14: note: (near initialization for 'hyp_exit_handlers[1]') 8 | #define NULL ((void *)0) | ^ arch/arm64/kvm/hyp/nvhe/switch.c:163:43: note: in expansion of macro 'NULL' 163 | [ESR_ELx_EC_WFx] = NULL, | ^~~~ >> arch/arm64/kvm/hyp/nvhe/switch.c:164:43: warning: initialized field overwritten [-Woverride-init] 164 | [ESR_ELx_EC_CP15_32] = kvm_handle_pvm_restricted, | ^~~~~~~~~~~~~~~~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/switch.c:164:43: note: (near initialization for 'hyp_exit_handlers[3]') arch/arm64/kvm/hyp/nvhe/switch.c:165:43: warning: initialized field overwritten [-Woverride-init] 165 | [ESR_ELx_EC_CP15_64] = kvm_handle_pvm_restricted, | ^~~~~~~~~~~~~~~~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/switch.c:165:43: note: (near initialization for 'hyp_exit_handlers[4]') arch/arm64/kvm/hyp/nvhe/switch.c:166:43: warning: initialized field overwritten [-Woverride-init] 166 | [ESR_ELx_EC_CP14_MR] = kvm_handle_pvm_restricted, | ^~~~~~~~~~~~~~~~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/switch.c:166:43: note: (near initialization for 'hyp_exit_handlers[5]') arch/arm64/kvm/hyp/nvhe/switch.c:167:43: warning: initialized field overwritten [-Woverride-init] 167 | [ESR_ELx_EC_CP14_LS] = kvm_handle_pvm_restricted, | ^~~~~~~~~~~~~~~~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/switch.c:167:43: note: (near initialization for 'hyp_exit_handlers[6]') arch/arm64/kvm/hyp/nvhe/switch.c:168:43: warning: initialized field overwritten [-Woverride-init] 168 | [ESR_ELx_EC_CP14_64] = kvm_handle_pvm_restricted, | ^~~~~~~~~~~~~~~~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/switch.c:168:43: note: (near initialization for 'hyp_exit_handlers[12]') In file included from include/uapi/linux/posix_types.h:5, from include/uapi/linux/types.h:14, from include/linux/types.h:6, from include/linux/kvm_host.h:6, from arch/arm64/include/asm/kvm_emulate.h:14, from arch/arm64/kvm/hyp/include/hyp/adjust_pc.h:13, from arch/arm64/kvm/hyp/include/hyp/switch.h:10, from arch/arm64/kvm/hyp/nvhe/switch.c:7: include/linux/stddef.h:8:14: warning: initialized field overwritten [-Woverride-init] 8 | #define NULL ((void *)0) | ^ arch/arm64/kvm/hyp/nvhe/switch.c:169:43: note: in expansion of macro 'NULL' 169 | [ESR_ELx_EC_HVC32] = NULL, | ^~~~ include/linux/stddef.h:8:14: note: (near initialization for 'hyp_exit_handlers[18]') 8 | #define NULL ((void *)0) | ^ arch/arm64/kvm/hyp/nvhe/switch.c:169:43: note: in expansion of macro 'NULL' 169 | [ESR_ELx_EC_HVC32] = NULL, | ^~~~ include/linux/stddef.h:8:14: warning: initialized field overwritten [-Woverride-init] 8 | #define NULL ((void *)0) | ^ arch/arm64/kvm/hyp/nvhe/switch.c:170:43: note: in expansion of macro 'NULL' 170 | [ESR_ELx_EC_SMC32] = NULL, | ^~~~ include/linux/stddef.h:8:14: note: (near initialization for 'hyp_exit_handlers[19]') 8 | #define NULL ((void *)0) | ^ arch/arm64/kvm/hyp/nvhe/switch.c:170:43: note: in expansion of macro 'NULL' 170 | [ESR_ELx_EC_SMC32] = NULL, | ^~~~ include/linux/stddef.h:8:14: warning: initialized field overwritten [-Woverride-init] 8 | #define NULL ((void *)0) | ^ arch/arm64/kvm/hyp/nvhe/switch.c:171:43: note: in expansion of macro 'NULL' 171 | [ESR_ELx_EC_HVC64] = NULL, | ^~~~ include/linux/stddef.h:8:14: note: (near initialization for 'hyp_exit_handlers[22]') 8 | #define NULL ((void *)0) | ^ arch/arm64/kvm/hyp/nvhe/switch.c:171:43: note: in expansion of macro 'NULL' 171 | [ESR_ELx_EC_HVC64] = NULL, | ^~~~ include/linux/stddef.h:8:14: warning: initialized field overwritten [-Woverride-init] 8 | #define NULL ((void *)0) | ^ arch/arm64/kvm/hyp/nvhe/switch.c:172:43: note: in expansion of macro 'NULL' 172 | [ESR_ELx_EC_SMC64] = NULL, | ^~~~ include/linux/stddef.h:8:14: note: (near initialization for 'hyp_exit_handlers[23]') 8 | #define NULL ((void *)0) | ^ arch/arm64/kvm/hyp/nvhe/switch.c:172:43: note: in expansion of macro 'NULL' 172 | [ESR_ELx_EC_SMC64] = NULL, | ^~~~ arch/arm64/kvm/hyp/nvhe/switch.c:173:43: warning: initialized field overwritten [-Woverride-init] 173 | [ESR_ELx_EC_SYS64] = kvm_handle_pvm_sys64, | ^~~~~~~~~~~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/switch.c:173:43: note: (near initialization for 'hyp_exit_handlers[24]') arch/arm64/kvm/hyp/nvhe/switch.c:174:43: warning: initialized field overwritten [-Woverride-init] 174 | [ESR_ELx_EC_SVE] = kvm_handle_pvm_restricted, | ^~~~~~~~~~~~~~~~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/switch.c:174:43: note: (near initialization for 'hyp_exit_handlers[25]') In file included from include/uapi/linux/posix_types.h:5, from include/uapi/linux/types.h:14, from include/linux/types.h:6, from include/linux/kvm_host.h:6, from arch/arm64/include/asm/kvm_emulate.h:14, from arch/arm64/kvm/hyp/include/hyp/adjust_pc.h:13, from arch/arm64/kvm/hyp/include/hyp/switch.h:10, from arch/arm64/kvm/hyp/nvhe/switch.c:7: include/linux/stddef.h:8:14: warning: initialized field overwritten [-Woverride-init] 8 | #define NULL ((void *)0) | ^ arch/arm64/kvm/hyp/nvhe/switch.c:175:43: note: in expansion of macro 'NULL' 175 | [ESR_ELx_EC_IABT_LOW] = NULL, | ^~~~ include/linux/stddef.h:8:14: note: (near initialization for 'hyp_exit_handlers[32]') 8 | #define NULL ((void *)0) | ^ vim +164 arch/arm64/kvm/hyp/nvhe/switch.c 160 161 static exit_handle_fn hyp_exit_handlers[] = { 162 [0 ... ESR_ELx_EC_MAX] = kvm_handle_pvm_restricted, > 163 [ESR_ELx_EC_WFx] = NULL, > 164 [ESR_ELx_EC_CP15_32] = kvm_handle_pvm_restricted, 165 [ESR_ELx_EC_CP15_64] = kvm_handle_pvm_restricted, 166 [ESR_ELx_EC_CP14_MR] = kvm_handle_pvm_restricted, 167 [ESR_ELx_EC_CP14_LS] = kvm_handle_pvm_restricted, 168 [ESR_ELx_EC_CP14_64] = kvm_handle_pvm_restricted, 169 [ESR_ELx_EC_HVC32] = NULL, 170 [ESR_ELx_EC_SMC32] = NULL, 171 [ESR_ELx_EC_HVC64] = NULL, 172 [ESR_ELx_EC_SMC64] = NULL, 173 [ESR_ELx_EC_SYS64] = kvm_handle_pvm_sys64, 174 [ESR_ELx_EC_SVE] = kvm_handle_pvm_restricted, 175 [ESR_ELx_EC_IABT_LOW] = NULL, 176 [ESR_ELx_EC_DABT_LOW] = NULL, 177 [ESR_ELx_EC_SOFTSTP_LOW] = kvm_handle_pvm_restricted, 178 [ESR_ELx_EC_WATCHPT_LOW] = kvm_handle_pvm_restricted, 179 [ESR_ELx_EC_BREAKPT_LOW] = kvm_handle_pvm_restricted, 180 [ESR_ELx_EC_BKPT32] = kvm_handle_pvm_restricted, 181 [ESR_ELx_EC_BRK64] = kvm_handle_pvm_restricted, 182 [ESR_ELx_EC_FP_ASIMD] = kvm_handle_pvm_restricted, 183 [ESR_ELx_EC_PAC] = NULL, 184 }; 185 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org