x86/xen: put setup.c, pmu.c and apic.c under CONFIG_XEN_PV
authorVitaly Kuznetsov <vkuznets@redhat.com>
Tue, 14 Mar 2017 17:35:50 +0000 (18:35 +0100)
committerJuergen Gross <jgross@suse.com>
Tue, 2 May 2017 09:09:28 +0000 (11:09 +0200)
xen_pmu_init/finish() functions are used in suspend.c and
enlighten.c, add stubs for now.

Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Reviewed-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Juergen Gross <jgross@suse.com>
arch/x86/xen/Kconfig
arch/x86/xen/Makefile
arch/x86/xen/pmu.h

index 6d15c3439ecd7a26adc2dd7c56c4525b7f558753..3bcb091ef298384aac245da3a498363da7a01b50 100644 (file)
@@ -6,7 +6,6 @@ config XEN
        bool "Xen guest support"
        depends on PARAVIRT
        select PARAVIRT_CLOCK
-       select XEN_HAVE_VPMU
        depends on X86_64 || (X86_32 && X86_PAE)
        depends on X86_LOCAL_APIC && X86_TSC
        help
@@ -19,6 +18,7 @@ config XEN_PV
        default y
        depends on XEN
        select XEN_HAVE_PVMMU
+       select XEN_HAVE_VPMU
        help
          Support running as a Xen PV guest.
 
index cf8d6c5e36d898e5be21e8816f6b44d79e46202e..f610651aec4d8c035337acbbde2ad41625d73ad9 100644 (file)
@@ -10,13 +10,13 @@ nostackp := $(call cc-option, -fno-stack-protector)
 CFLAGS_enlighten_pv.o          := $(nostackp)
 CFLAGS_mmu_pv.o                := $(nostackp)
 
-obj-y          := enlighten.o setup.o multicalls.o mmu.o irq.o \
+obj-y          := enlighten.o multicalls.o mmu.o irq.o \
                        time.o xen-asm.o xen-asm_$(BITS).o \
                        grant-table.o suspend.o platform-pci-unplug.o \
-                       p2m.o apic.o pmu.o enlighten_pv.o mmu_pv.o
+                       p2m.o enlighten_pv.o mmu_pv.o
 
 obj-$(CONFIG_XEN_PVHVM)                += enlighten_hvm.o mmu_hvm.o suspend_hvm.o
-obj-$(CONFIG_XEN_PV)                   += suspend_pv.o
+obj-$(CONFIG_XEN_PV)                   += setup.o apic.o pmu.o suspend_pv.o
 obj-$(CONFIG_XEN_PVH)                  += enlighten_pvh.o
 
 obj-$(CONFIG_EVENT_TRACING) += trace.o
index af5f0ad94078f75943b82b7bc003a7d45f465b1c..4be5355b56f74264727fbb9d678be54cbc38e794 100644 (file)
@@ -4,8 +4,13 @@
 #include <xen/interface/xenpmu.h>
 
 irqreturn_t xen_pmu_irq_handler(int irq, void *dev_id);
+#ifdef CONFIG_XEN_HAVE_VPMU
 void xen_pmu_init(int cpu);
 void xen_pmu_finish(int cpu);
+#else
+static inline void xen_pmu_init(int cpu) {}
+static inline void xen_pmu_finish(int cpu) {}
+#endif
 bool is_xen_pmu(int cpu);
 bool pmu_msr_read(unsigned int msr, uint64_t *val, int *err);
 bool pmu_msr_write(unsigned int msr, uint32_t low, uint32_t high, int *err);