[android-common:android15-6.6-2026-07 8/8] arch/arm64/kvm/hyp/include/hyp/switch.h:265:6: warning: unused variable 'zcr_el2'
kernel test robot <[email protected]>
| Newsgroups | dev.linux.lists.oe-kbuild-all |
|---|---|
| Message-ID | <[email protected]> |
Hi Fuad, FYI, the error/warning still remains. tree: https://android.googlesource.com/kernel/common android15-6.6-2026-07 head: 407989faed8855296b26bfb40a621f478331816c commit: 2b5e5cbdf01152384c781bb7edd7a778c1419b3a [8/8] ANDROID: KVM: arm64: Use active guest SVE vector length on save/restore config: arm64-randconfig-003 (https://download.01.org/0day-ci/archive/20260717/[email protected]/config) compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260717/[email protected]/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 <[email protected]> | Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/ All warnings (new ones prefixed by >>): In file included from arch/arm64/kvm/hyp/vhe/switch.c:7: In file included from arch/arm64/kvm/hyp/include/hyp/switch.h:10: In file included from arch/arm64/kvm/hyp/include/hyp/adjust_pc.h:13: In file included from arch/arm64/include/asm/kvm_emulate.h:14: In file included from include/linux/kvm_host.h:16: In file included from include/linux/mm.h:2180: include/linux/vmstat.h:508:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion] 508 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 509 | item]; | ~~~~ include/linux/vmstat.h:515:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion] 515 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 516 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ include/linux/vmstat.h:522:36: warning: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Wenum-enum-conversion] 522 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_" | ~~~~~~~~~~~ ^ ~~~ include/linux/vmstat.h:527:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion] 527 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 528 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ include/linux/vmstat.h:536:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion] 536 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 537 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ In file included from arch/arm64/kvm/hyp/vhe/switch.c:7: >> arch/arm64/kvm/hyp/include/hyp/switch.h:265:6: warning: unused variable 'zcr_el2' [-Wunused-variable] 265 | u64 zcr_el2 = min(zcr_el1, vcpu_sve_max_vq(vcpu) - 1ULL); | ^~~~~~~ 6 warnings generated. -- In file included from arch/arm64/kvm/hyp/nvhe/switch.c:7: In file included from arch/arm64/kvm/hyp/include/hyp/switch.h:10: In file included from arch/arm64/kvm/hyp/include/hyp/adjust_pc.h:13: In file included from arch/arm64/include/asm/kvm_emulate.h:14: In file included from include/linux/kvm_host.h:16: In file included from include/linux/mm.h:2180: include/linux/vmstat.h:508:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion] 508 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 509 | item]; | ~~~~ include/linux/vmstat.h:515:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion] 515 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 516 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ include/linux/vmstat.h:522:36: warning: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Wenum-enum-conversion] 522 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_" | ~~~~~~~~~~~ ^ ~~~ include/linux/vmstat.h:527:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion] 527 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 528 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ include/linux/vmstat.h:536:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion] 536 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 537 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ In file included from arch/arm64/kvm/hyp/nvhe/switch.c:7: >> arch/arm64/kvm/hyp/include/hyp/switch.h:265:6: warning: unused variable 'zcr_el2' [-Wunused-variable] 265 | u64 zcr_el2 = min(zcr_el1, vcpu_sve_max_vq(vcpu) - 1ULL); | ^~~~~~~ arch/arm64/kvm/hyp/nvhe/switch.c:216:7: warning: unused variable 'vq_len' [-Wunused-variable] 216 | u64 vq_len = sve_vq_from_vl(kvm_host_sve_max_vl) - 1; | ^~~~~~ arch/arm64/kvm/hyp/nvhe/switch.c:414:5: warning: no previous prototype for function '__pkvm_register_hyp_panic_notifier' [-Wmissing-prototypes] 414 | int __pkvm_register_hyp_panic_notifier(void (*cb)(struct user_pt_regs *regs)) | ^ arch/arm64/kvm/hyp/nvhe/switch.c:414:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 414 | int __pkvm_register_hyp_panic_notifier(void (*cb)(struct user_pt_regs *regs)) | ^ | static 8 warnings generated. -- In file included from arch/arm64/kvm/hyp/nvhe/hyp-main.c:7: In file included from include/kvm/arm_hypercalls.h:7: In file included from arch/arm64/include/asm/kvm_emulate.h:14: In file included from include/linux/kvm_host.h:16: In file included from include/linux/mm.h:2180: include/linux/vmstat.h:508:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion] 508 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 509 | item]; | ~~~~ include/linux/vmstat.h:515:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion] 515 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 516 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ include/linux/vmstat.h:522:36: warning: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Wenum-enum-conversion] 522 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_" | ~~~~~~~~~~~ ^ ~~~ include/linux/vmstat.h:527:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion] 527 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 528 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ include/linux/vmstat.h:536:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion] 536 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 537 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ arch/arm64/kvm/hyp/nvhe/hyp-main.c:88:6: warning: no previous prototype for function '__pkvm_unmask_serror' [-Wmissing-prototypes] 88 | void __pkvm_unmask_serror(void) | ^ arch/arm64/kvm/hyp/nvhe/hyp-main.c:88:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 88 | void __pkvm_unmask_serror(void) | ^ | static >> arch/arm64/kvm/hyp/nvhe/hyp-main.c:770:6: warning: unused variable 'zcr_el2' [-Wunused-variable] 770 | u64 zcr_el2 = min(zcr_el1, vcpu_sve_max_vq(vcpu) - 1ULL); | ^~~~~~~ arch/arm64/kvm/hyp/nvhe/hyp-main.c:799:8: warning: unused variable 'vq_len' [-Wunused-variable] 799 | u64 vq_len = sve_vq_from_vl(kvm_host_sve_max_vl) - 1; | ^~~~~~ 8 warnings generated. vim +/zcr_el2 +265 arch/arm64/kvm/hyp/include/hyp/switch.h 261 262 static inline void __hyp_sve_restore_guest(struct kvm_vcpu *vcpu) 263 { 264 u64 zcr_el1 = __vcpu_sys_reg(vcpu, ZCR_EL1); > 265 u64 zcr_el2 = min(zcr_el1, vcpu_sve_max_vq(vcpu) - 1ULL); 266 267 write_sysreg_el1(zcr_el1, SYS_ZCR); 268 sve_cond_update_zcr_vq(zcr_el2, SYS_ZCR_EL2); 269 __sve_restore_state(vcpu_sve_pffr(vcpu), 270 &vcpu->arch.ctxt.fp_regs.fpsr); 271 sve_cond_update_zcr_vq(vcpu_sve_max_vq(vcpu) - 1ULL, SYS_ZCR_EL2); 272 } 273 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki