[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v2 3/4] hw/xen/Kconfig: Introduce XEN_PV config



On 01/02/21 11:59, Philippe Mathieu-Daudé wrote:
On 1/31/21 3:18 PM, Philippe Mathieu-Daudé wrote:
xenpv machine requires USB, IDE_PIIX and PCI:

   /usr/bin/ld:
   libcommon.fa.p/hw_xen_xen-legacy-backend.c.o: in function 
`xen_be_register_common':
   hw/xen/xen-legacy-backend.c:757: undefined reference to `xen_usb_ops'
   libqemu-i386-softmmu.fa.p/hw_i386_xen_xen_platform.c.o: in function 
`unplug_disks':
   hw/i386/xen/xen_platform.c:153: undefined reference to 
`pci_piix3_xen_ide_unplug'
   libqemu-i386-softmmu.fa.p/hw_i386_xen_xen_platform.c.o: in function 
`pci_unplug_nics':
   hw/i386/xen/xen_platform.c:137: undefined reference to `pci_for_each_device'
   libqemu-i386-softmmu.fa.p/hw_i386_xen_xen_platform.c.o: in function 
`xen_platform_realize':
   hw/i386/xen/xen_platform.c:483: undefined reference to `pci_register_bar'

Signed-off-by: Philippe Mathieu-Daudé <f4bug@xxxxxxxxx>
---
  hw/Kconfig     | 1 +
  hw/xen/Kconfig | 7 +++++++
  2 files changed, 8 insertions(+)
  create mode 100644 hw/xen/Kconfig

diff --git a/hw/Kconfig b/hw/Kconfig
index 5ad3c6b5a4b..f2a95591d94 100644
--- a/hw/Kconfig
+++ b/hw/Kconfig
@@ -39,6 +39,7 @@ source usb/Kconfig
  source virtio/Kconfig
  source vfio/Kconfig
  source watchdog/Kconfig
+source xen/Kconfig
# arch Kconfig
  source arm/Kconfig
diff --git a/hw/xen/Kconfig b/hw/xen/Kconfig
new file mode 100644
index 00000000000..0b8427d6bd1
--- /dev/null
+++ b/hw/xen/Kconfig
@@ -0,0 +1,7 @@
+config XEN_PV
+    bool
+    default y if XEN
+    depends on XEN
+    select PCI
+    select USB
+    select IDE_PIIX

Well this is not enough, --without-default-devices fails:

/usr/bin/ld: libqemu-x86_64-softmmu.fa.p/softmmu_physmem.c.o: in
function `cpu_physical_memory_set_dirty_range':
include/exec/ram_addr.h:333: undefined reference to
`xen_hvm_modified_memory'
/usr/bin/ld: libqemu-x86_64-softmmu.fa.p/softmmu_physmem.c.o: in
function `ram_block_add':
softmmu/physmem.c:1873: undefined reference to `xen_ram_alloc'
/usr/bin/ld: libqemu-x86_64-softmmu.fa.p/softmmu_physmem.c.o: in
function `cpu_physical_memory_set_dirty_range':
include/exec/ram_addr.h:333: undefined reference to
`xen_hvm_modified_memory'
/usr/bin/ld: include/exec/ram_addr.h:333: undefined reference to
`xen_hvm_modified_memory'
/usr/bin/ld: libqemu-x86_64-softmmu.fa.p/softmmu_memory.c.o: in function
`cpu_physical_memory_set_dirty_range':
include/exec/ram_addr.h:333: undefined reference to
`xen_hvm_modified_memory'
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.

I think you can modify xen_hvm_modified_memory to become a virtual function in AccelClass.

Paolo




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.