On Thu, Apr 18, 2013 at 06:23:50AM +0200, Igor Mammedov wrote: > Signed-off-by: Igor Mammedov <imamm...@redhat.com>
Reviewed-by: Eduardo Habkost <ehabk...@redhat.com> > --- > v3: > put ifndef around msi.h in kvm-stub.c instead of in msi.h > > v2: > remove unnecessary kvm-stub.o from "System emulator target" section > --- > Makefile.target | 14 +++++++------- > include/sysemu/kvm.h | 4 ++-- > kvm-stub.c | 7 ++++++- > 3 files changed, 15 insertions(+), 10 deletions(-) > > diff --git a/Makefile.target b/Makefile.target > index 2bd6d14..9bde8e5 100644 > --- a/Makefile.target > +++ b/Makefile.target > @@ -64,6 +64,12 @@ all: $(PROGS) stap > # Dummy command so that make thinks it has done something > @true > > +CONFIG_NO_PCI = $(if $(subst n,,$(CONFIG_PCI)),n,y) > +CONFIG_NO_KVM = $(if $(subst n,,$(CONFIG_KVM)),n,y) > +CONFIG_NO_XEN = $(if $(subst n,,$(CONFIG_XEN)),n,y) > +CONFIG_NO_GET_MEMORY_MAPPING = $(if $(subst > n,,$(CONFIG_HAVE_GET_MEMORY_MAPPING)),n,y) > +CONFIG_NO_CORE_DUMP = $(if $(subst n,,$(CONFIG_HAVE_CORE_DUMP)),n,y) > + > ######################################################### > # cpu emulator library > obj-y = exec.o translate-all.o cpu-exec.o > @@ -74,6 +80,7 @@ obj-y += fpu/softfloat.o > obj-y += target-$(TARGET_BASE_ARCH)/ > obj-y += disas.o > obj-$(CONFIG_GDBSTUB_XML) += gdbstub-xml.o > +obj-$(CONFIG_NO_KVM) += kvm-stub.o > > ######################################################### > # Linux user emulator target > @@ -102,18 +109,11 @@ endif #CONFIG_BSD_USER > ######################################################### > # System emulator target > ifdef CONFIG_SOFTMMU > -CONFIG_NO_PCI = $(if $(subst n,,$(CONFIG_PCI)),n,y) > -CONFIG_NO_KVM = $(if $(subst n,,$(CONFIG_KVM)),n,y) > -CONFIG_NO_XEN = $(if $(subst n,,$(CONFIG_XEN)),n,y) > -CONFIG_NO_GET_MEMORY_MAPPING = $(if $(subst > n,,$(CONFIG_HAVE_GET_MEMORY_MAPPING)),n,y) > -CONFIG_NO_CORE_DUMP = $(if $(subst n,,$(CONFIG_HAVE_CORE_DUMP)),n,y) > - > obj-y += arch_init.o cpus.o monitor.o gdbstub.o balloon.o ioport.o > obj-y += qtest.o > obj-y += hw/ > obj-$(CONFIG_FDT) += device_tree.o > obj-$(CONFIG_KVM) += kvm-all.o > -obj-$(CONFIG_NO_KVM) += kvm-stub.o > obj-y += memory.o savevm.o cputlb.o > obj-$(CONFIG_HAVE_GET_MEMORY_MAPPING) += memory_mapping.o > obj-$(CONFIG_HAVE_CORE_DUMP) += dump.o > diff --git a/include/sysemu/kvm.h b/include/sysemu/kvm.h > index 495e6f8..93cef28 100644 > --- a/include/sysemu/kvm.h > +++ b/include/sysemu/kvm.h > @@ -144,10 +144,10 @@ int kvm_cpu_exec(CPUArchState *env); > #if !defined(CONFIG_USER_ONLY) > void *kvm_vmalloc(ram_addr_t size); > void *kvm_arch_vmalloc(ram_addr_t size); > -void kvm_setup_guest_memory(void *start, size_t size); > +#endif > > +void kvm_setup_guest_memory(void *start, size_t size); > void kvm_flush_coalesced_mmio_buffer(void); > -#endif > > int kvm_insert_breakpoint(CPUArchState *current_env, target_ulong addr, > target_ulong len, int type); > diff --git a/kvm-stub.c b/kvm-stub.c > index 3e5c201..e5d2906 100644 > --- a/kvm-stub.c > +++ b/kvm-stub.c > @@ -12,11 +12,14 @@ > > #include "qemu-common.h" > #include "hw/hw.h" > -#include "hw/pci/msi.h" > #include "cpu.h" > #include "exec/gdbstub.h" > #include "sysemu/kvm.h" > > +#ifndef CONFIG_USER_ONLY > +#include "hw/pci/msi.h" > +#endif > + > KVMState *kvm_state; > bool kvm_kernel_irqchip; > bool kvm_async_interrupts_allowed; > @@ -122,6 +125,7 @@ int kvm_on_sigbus(int code, void *addr) > return 1; > } > > +#ifndef CONFIG_USER_ONLY > int kvm_irqchip_add_msi_route(KVMState *s, MSIMessage msg) > { > return -ENOSYS; > @@ -145,3 +149,4 @@ int kvm_irqchip_remove_irqfd_notifier(KVMState *s, > EventNotifier *n, int virq) > { > return -ENOSYS; > } > +#endif > -- > 1.8.2 > -- Eduardo