Hi Naveen, kernel test robot noticed the following build errors: [auto build test ERROR on eb723766b1030a23c38adf2348b7c3d1409d11f0] url: https://github.com/intel-lab-lkp/linux/commits/Naveen-N-Rao-AMD/KVM-SVM-Increase-X2AVIC-limit-to-4096-vcpus/20250203-144127 base: eb723766b1030a23c38adf2348b7c3d1409d11f0 patch link: https://lore.kernel.org/r/b79610c60de53048f3fda942fd45973c4ab1de97.1738563890.git.naveen%40kernel.org patch subject: [PATCH v2 2/2] KVM: SVM: Limit AVIC physical max index based on configured max_vcpu_ids config: x86_64-buildonly-randconfig-003-20250203 (https://download.01.org/0day-ci/archive/20250203/202502031922.dBj76pSx-lkp@xxxxxxxxx/config) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250203/202502031922.dBj76pSx-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/202502031922.dBj76pSx-lkp@xxxxxxxxx/ All errors (new ones prefixed by >>): In file included from arch/x86/include/asm/kvm_host.h:31, from include/linux/kvm_host.h:45, from arch/x86/kvm/svm/avic.c:20: >> arch/x86/include/asm/apic.h:258:34: error: expected ')' before numeric constant 258 | #define x2apic_mode (0) | ^ arch/x86/kvm/svm/avic.c:88:66: note: in expansion of macro 'x2apic_mode' 88 | static inline u32 avic_get_max_physical_id(struct kvm *kvm, bool x2apic_mode) | ^~~~~~~~~~~ arch/x86/kvm/svm/avic.c: In function 'avic_activate_vmcb': >> arch/x86/kvm/svm/avic.c:117:51: error: implicit declaration of function 'avic_get_max_physical_id' [-Werror=implicit-function-declaration] 117 | vmcb->control.avic_physical_id |= avic_get_max_physical_id(svm->vcpu.kvm, true); | ^~~~~~~~~~~~~~~~~~~~~~~~ cc1: some warnings being treated as errors vim +/avic_get_max_physical_id +117 arch/x86/kvm/svm/avic.c 98 99 static void avic_activate_vmcb(struct vcpu_svm *svm) 100 { 101 struct vmcb *vmcb = svm->vmcb01.ptr; 102 103 vmcb->control.int_ctl &= ~(AVIC_ENABLE_MASK | X2APIC_MODE_MASK); 104 vmcb->control.avic_physical_id &= ~avic_physical_max_index_mask; 105 106 vmcb->control.int_ctl |= AVIC_ENABLE_MASK; 107 108 /* 109 * Note: KVM supports hybrid-AVIC mode, where KVM emulates x2APIC MSR 110 * accesses, while interrupt injection to a running vCPU can be 111 * achieved using AVIC doorbell. KVM disables the APIC access page 112 * (deletes the memslot) if any vCPU has x2APIC enabled, thus enabling 113 * AVIC in hybrid mode activates only the doorbell mechanism. 114 */ 115 if (x2avic_enabled && apic_x2apic_mode(svm->vcpu.arch.apic)) { 116 vmcb->control.int_ctl |= X2APIC_MODE_MASK; > 117 vmcb->control.avic_physical_id |= avic_get_max_physical_id(svm->vcpu.kvm, true); 118 /* Disabling MSR intercept for x2APIC registers */ 119 svm_set_x2apic_msr_interception(svm, false); 120 } else { 121 /* 122 * Flush the TLB, the guest may have inserted a non-APIC 123 * mapping into the TLB while AVIC was disabled. 124 */ 125 kvm_make_request(KVM_REQ_TLB_FLUSH_CURRENT, &svm->vcpu); 126 127 /* For xAVIC and hybrid-xAVIC modes */ 128 vmcb->control.avic_physical_id |= avic_get_max_physical_id(svm->vcpu.kvm, false); 129 /* Enabling MSR intercept for x2APIC registers */ 130 svm_set_x2apic_msr_interception(svm, true); 131 } 132 } 133 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki