Some functions in vpci.c (vpci_remove_device and vpci_add_handlers) are not used by the user-space test harness, so guard them with __XEN__ in order to avoid exposing them to the user-space test harness.
Requested-by: Jan Beulich <jbeul...@suse.com> Signed-off-by: Roger Pau Monné <roger....@citrix.com> --- tools/tests/vpci/Makefile | 8 ++------ xen/drivers/vpci/vpci.c | 10 ++++++---- xen/include/xen/vpci.h | 6 +----- 3 files changed, 9 insertions(+), 15 deletions(-) diff --git a/tools/tests/vpci/Makefile b/tools/tests/vpci/Makefile index e45fcb5cd9..5075bc2be2 100644 --- a/tools/tests/vpci/Makefile +++ b/tools/tests/vpci/Makefile @@ -24,12 +24,8 @@ distclean: clean install: vpci.c: $(XEN_ROOT)/xen/drivers/vpci/vpci.c - # Trick the compiler so it doesn't complain about missing symbols - sed -e '/#include/d' \ - -e '1s;^;#include "emul.h"\ - vpci_register_init_t *const __start_vpci_array[1]\;\ - vpci_register_init_t *const __end_vpci_array[1]\;\ - ;' <$< >$@ + # Remove includes and add the test harness header + sed -e '/#include/d' -e '1s/^/#include "emul.h"/' <$< >$@ list.h: $(XEN_ROOT)/xen/include/xen/list.h vpci.h: $(XEN_ROOT)/xen/include/xen/vpci.h diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c index 8ec9c916ea..2913b56500 100644 --- a/xen/drivers/vpci/vpci.c +++ b/xen/drivers/vpci/vpci.c @@ -20,10 +20,6 @@ #include <xen/sched.h> #include <xen/vpci.h> -extern vpci_register_init_t *const __start_vpci_array[]; -extern vpci_register_init_t *const __end_vpci_array[]; -#define NUM_VPCI_INIT (__end_vpci_array - __start_vpci_array) - /* Internal struct to store the emulated PCI registers. */ struct vpci_register { vpci_read_t *read; @@ -34,6 +30,11 @@ struct vpci_register { struct list_head node; }; +#ifdef __XEN__ +extern vpci_register_init_t *const __start_vpci_array[]; +extern vpci_register_init_t *const __end_vpci_array[]; +#define NUM_VPCI_INIT (__end_vpci_array - __start_vpci_array) + void vpci_remove_device(struct pci_dev *pdev) { spin_lock(&pdev->vpci->lock); @@ -80,6 +81,7 @@ int __hwdom_init vpci_add_handlers(struct pci_dev *pdev) return rc; } +#endif /* __XEN__ */ static int vpci_register_cmp(const struct vpci_register *r1, const struct vpci_register *r2) diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h index fc47163ba6..cb39e0ebea 100644 --- a/xen/include/xen/vpci.h +++ b/xen/include/xen/vpci.h @@ -90,11 +90,9 @@ struct vpci { bool rom_enabled : 1; /* FIXME: currently there's no support for SR-IOV. */ } header; -#endif /* MSI data. */ struct vpci_msi { -#ifdef __XEN__ /* Address. */ uint64_t address; /* Mask bitfield. */ @@ -113,12 +111,10 @@ struct vpci { uint8_t vectors : 5; /* Arch-specific data. */ struct vpci_arch_msi arch; -#endif } *msi; /* MSI-X data. */ struct vpci_msix { -#ifdef __XEN__ struct pci_dev *pdev; /* List link. */ struct list_head next; @@ -141,8 +137,8 @@ struct vpci { bool updated : 1; struct vpci_arch_msix_entry arch; } entries[]; -#endif } *msix; +#endif }; struct vpci_vcpu { -- 2.16.2 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel