@@ -128,7 +128,7 @@ user-obj-y += cutils.o cache-utils.o
# libhw
hw-obj-y =
-hw-obj-y += vl.o loader.o
+hw-obj-y += vl.o balloon.o loader.o
hw-obj-y += virtio.o virtio-console.o
hw-obj-$(CONFIG_VIRTIO_PCI) += virtio-pci.o
hw-obj-y += fw_cfg.o pci.o pci_host.o pcie_host.o
@@ -161,7 +161,7 @@ endif #CONFIG_BSD_USER
# System emulator target
ifdef CONFIG_SOFTMMU
-obj-y = arch_init.o cpus.o monitor.o machine.o gdbstub.o balloon.o
+obj-y = arch_init.o cpus.o monitor.o machine.o gdbstub.o
# virtio has to be here due to weird dependency between PCI and virtio-net.
# need to fix this properly
obj-y += virtio-blk.o virtio-balloon.o virtio-net.o virtio-serial-bus.o
@@ -16,6 +16,7 @@
#include "config-host.h"
#include "qemu-queue.h"
+#include "cpu-common.h"
extern int kvm_allowed;
@@ -31,6 +32,10 @@ struct kvm_run;
int kvm_init(int smp_cpus);
+int kvm_has_sync_mmu(void);
+int kvm_has_vcpu_events(void);
+int kvm_has_robust_singlestep(void);
+
#ifdef NEED_CPU_H
int kvm_init_vcpu(CPUState *env);
@@ -40,10 +45,6 @@ int kvm_cpu_exec(CPUState *env);
int kvm_log_start(target_phys_addr_t phys_addr, ram_addr_t size);
int kvm_log_stop(target_phys_addr_t phys_addr, ram_addr_t size);
-int kvm_has_sync_mmu(void);
-int kvm_has_vcpu_events(void);
-int kvm_has_robust_singlestep(void);
-
void kvm_setup_guest_memory(void *start, size_t size);
int kvm_coalesce_mmio_region(target_phys_addr_t start, ram_addr_t size);
balloon.c contained some code from monitor.c, so it was compiled once per target. Fix this. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> --- Makefile.objs | 2 +- Makefile.target | 2 +- kvm.h | 9 +++++---- 3 files changed, 7 insertions(+), 6 deletions(-)