Commit 6df0b37e2ab breaks a --enable-debug build in a non-KVM environment with the following error:
/usr/bin/ld: libqemu-riscv64-softmmu.fa.p/hw_intc_riscv_aplic.c.o: in function `riscv_kvm_aplic_request': ./qemu/build/../hw/intc/riscv_aplic.c:486: undefined reference to `kvm_set_irq' collect2: error: ld returned 1 exit status This happens because the debug build will poke into the 'if (is_kvm_aia(aplic->msimode))' block and fail to find a reference to the KVM only function riscv_kvm_aplic_request(). Make riscv_kvm_aplic_request() a no-op if we're not building KVM. Fixes: 6df0b37e2ab ("target/riscv: update APLIC and IMSIC to support KVM AIA") Signed-off-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com> --- hw/intc/riscv_aplic.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/hw/intc/riscv_aplic.c b/hw/intc/riscv_aplic.c index 592c3ce768..b634738bda 100644 --- a/hw/intc/riscv_aplic.c +++ b/hw/intc/riscv_aplic.c @@ -483,7 +483,9 @@ static uint32_t riscv_aplic_idc_claimi(RISCVAPLICState *aplic, uint32_t idc) static void riscv_kvm_aplic_request(void *opaque, int irq, int level) { +#ifdef CONFIG_KVM kvm_set_irq(kvm_state, irq, !!level); +#endif } static void riscv_aplic_request(void *opaque, int irq, int level) -- 2.41.0