xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* [RFC PATCH 0/4] hw/xen: Fixes to only build the XEN_PV machine
@ 2021-01-29 19:44 Philippe Mathieu-Daudé
  2021-01-29 19:44 ` [RFC PATCH 1/4] hw/ide/Kconfig: IDE_ISA requires ISA_BUS Philippe Mathieu-Daudé
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-01-29 19:44 UTC (permalink / raw)
  To: qemu-devel, Alex Bennée
  Cc: Stefano Stabellini, Anthony Perard, Thomas Huth, Paolo Bonzini,
	Paul Durrant, qemu-block, John Snow, xen-devel,
	Philippe Mathieu-Daudé

Hi Alex,

These are the Xen patches I'm carrying to build the xenpv
machine alone. I haven't tried to build the xenfv one.

Tagged as RFC because this was part of a draft, so must be
think better, but I don't have much time to finish it.
Anyhow quick review appreciated.

Missing (out of scope of this draft):
Possibility to build another config than the default-configs/
ones.

Regards,

Phil.

Philippe Mathieu-Daudé (4):
  hw/ide/Kconfig: IDE_ISA requires ISA_BUS
  hw/ide/Kconfig: IDE_PIIX requires IDE_ISA
  hw/xen/Kconfig: Introduce XEN_PV config
  hw/xen: Have the xenpv machine select 9pfs

 accel/Kconfig  | 1 -
 hw/Kconfig     | 1 +
 hw/ide/Kconfig | 3 ++-
 hw/xen/Kconfig | 7 +++++++
 4 files changed, 10 insertions(+), 2 deletions(-)
 create mode 100644 hw/xen/Kconfig

-- 
2.26.2



^ permalink raw reply	[flat|nested] 8+ messages in thread

* [RFC PATCH 1/4] hw/ide/Kconfig: IDE_ISA requires ISA_BUS
  2021-01-29 19:44 [RFC PATCH 0/4] hw/xen: Fixes to only build the XEN_PV machine Philippe Mathieu-Daudé
@ 2021-01-29 19:44 ` Philippe Mathieu-Daudé
  2021-01-29 19:59   ` Paolo Bonzini
  2021-01-29 19:44 ` [RFC PATCH 2/4] hw/ide/Kconfig: IDE_PIIX requires IDE_ISA Philippe Mathieu-Daudé
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 8+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-01-29 19:44 UTC (permalink / raw)
  To: qemu-devel, Alex Bennée
  Cc: Stefano Stabellini, Anthony Perard, Thomas Huth, Paolo Bonzini,
	Paul Durrant, qemu-block, John Snow, xen-devel,
	Philippe Mathieu-Daudé

hw/ide/ioport.c has a strong dependency on hw/isa/isa-bus.c:

  /usr/bin/ld: libcommon.fa.p/hw_ide_ioport.c.o: in function `ide_init_ioport':
  /usr/bin/ld: hw/ide/ioport.c:61: undefined reference to `isa_register_portio_list'

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 hw/ide/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/hw/ide/Kconfig b/hw/ide/Kconfig
index 5d9106b1ac2..41cdd9cbe03 100644
--- a/hw/ide/Kconfig
+++ b/hw/ide/Kconfig
@@ -12,7 +12,7 @@ config IDE_PCI
 
 config IDE_ISA
     bool
-    depends on ISA_BUS
+    select ISA_BUS
     select IDE_QDEV
 
 config IDE_PIIX
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [RFC PATCH 2/4] hw/ide/Kconfig: IDE_PIIX requires IDE_ISA
  2021-01-29 19:44 [RFC PATCH 0/4] hw/xen: Fixes to only build the XEN_PV machine Philippe Mathieu-Daudé
  2021-01-29 19:44 ` [RFC PATCH 1/4] hw/ide/Kconfig: IDE_ISA requires ISA_BUS Philippe Mathieu-Daudé
@ 2021-01-29 19:44 ` Philippe Mathieu-Daudé
  2021-01-29 20:00   ` Paolo Bonzini
  2021-01-29 19:44 ` [RFC PATCH 3/4] hw/xen/Kconfig: Introduce XEN_PV config Philippe Mathieu-Daudé
  2021-01-29 19:44 ` [RFC PATCH 4/4] hw/xen: Have the xenpv machine select 9pfs Philippe Mathieu-Daudé
  3 siblings, 1 reply; 8+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-01-29 19:44 UTC (permalink / raw)
  To: qemu-devel, Alex Bennée
  Cc: Stefano Stabellini, Anthony Perard, Thomas Huth, Paolo Bonzini,
	Paul Durrant, qemu-block, John Snow, xen-devel,
	Philippe Mathieu-Daudé

hw/ide/piix.c has a strong dependency on hw/isa/isa-bus.c:

  /usr/bin/ld: libcommon.fa.p/hw_ide_piix.c.o: in function `pci_piix_init_ports':
  /usr/bin/ld: hw/ide/piix.c:141: undefined reference to `isa_get_irq'

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 hw/ide/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/hw/ide/Kconfig b/hw/ide/Kconfig
index 41cdd9cbe03..0f5d316558b 100644
--- a/hw/ide/Kconfig
+++ b/hw/ide/Kconfig
@@ -17,6 +17,7 @@ config IDE_ISA
 
 config IDE_PIIX
     bool
+    select IDE_ISA
     select IDE_PCI
     select IDE_QDEV
 
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [RFC PATCH 3/4] hw/xen/Kconfig: Introduce XEN_PV config
  2021-01-29 19:44 [RFC PATCH 0/4] hw/xen: Fixes to only build the XEN_PV machine Philippe Mathieu-Daudé
  2021-01-29 19:44 ` [RFC PATCH 1/4] hw/ide/Kconfig: IDE_ISA requires ISA_BUS Philippe Mathieu-Daudé
  2021-01-29 19:44 ` [RFC PATCH 2/4] hw/ide/Kconfig: IDE_PIIX requires IDE_ISA Philippe Mathieu-Daudé
@ 2021-01-29 19:44 ` Philippe Mathieu-Daudé
  2021-01-29 20:01   ` Paolo Bonzini
  2021-01-29 19:44 ` [RFC PATCH 4/4] hw/xen: Have the xenpv machine select 9pfs Philippe Mathieu-Daudé
  3 siblings, 1 reply; 8+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-01-29 19:44 UTC (permalink / raw)
  To: qemu-devel, Alex Bennée
  Cc: Stefano Stabellini, Anthony Perard, Thomas Huth, Paolo Bonzini,
	Paul Durrant, qemu-block, John Snow, xen-devel,
	Philippe Mathieu-Daudé

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@amsat.org>
---
 hw/Kconfig     | 1 +
 hw/xen/Kconfig | 6 ++++++
 2 files changed, 7 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..15944144a17
--- /dev/null
+++ b/hw/xen/Kconfig
@@ -0,0 +1,6 @@
+config XEN_PV
+    bool
+    depends on XEN
+    select PCI
+    select USB
+    select IDE_PIIX
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [RFC PATCH 4/4] hw/xen: Have the xenpv machine select 9pfs
  2021-01-29 19:44 [RFC PATCH 0/4] hw/xen: Fixes to only build the XEN_PV machine Philippe Mathieu-Daudé
                   ` (2 preceding siblings ...)
  2021-01-29 19:44 ` [RFC PATCH 3/4] hw/xen/Kconfig: Introduce XEN_PV config Philippe Mathieu-Daudé
@ 2021-01-29 19:44 ` Philippe Mathieu-Daudé
  3 siblings, 0 replies; 8+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-01-29 19:44 UTC (permalink / raw)
  To: qemu-devel, Alex Bennée
  Cc: Stefano Stabellini, Anthony Perard, Thomas Huth, Paolo Bonzini,
	Paul Durrant, qemu-block, John Snow, xen-devel,
	Philippe Mathieu-Daudé

9pfs is not an accelerator feature but a machine one.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 accel/Kconfig  | 1 -
 hw/xen/Kconfig | 1 +
 2 files changed, 1 insertion(+), 1 deletion(-)

diff --git a/accel/Kconfig b/accel/Kconfig
index 461104c7715..b9e9a2d35b0 100644
--- a/accel/Kconfig
+++ b/accel/Kconfig
@@ -15,4 +15,3 @@ config KVM
 
 config XEN
     bool
-    select FSDEV_9P if VIRTFS
diff --git a/hw/xen/Kconfig b/hw/xen/Kconfig
index 15944144a17..14009cd6a05 100644
--- a/hw/xen/Kconfig
+++ b/hw/xen/Kconfig
@@ -4,3 +4,4 @@ config XEN_PV
     select PCI
     select USB
     select IDE_PIIX
+    select FSDEV_9P if VIRTFS
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [RFC PATCH 1/4] hw/ide/Kconfig: IDE_ISA requires ISA_BUS
  2021-01-29 19:44 ` [RFC PATCH 1/4] hw/ide/Kconfig: IDE_ISA requires ISA_BUS Philippe Mathieu-Daudé
@ 2021-01-29 19:59   ` Paolo Bonzini
  0 siblings, 0 replies; 8+ messages in thread
From: Paolo Bonzini @ 2021-01-29 19:59 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé, qemu-devel, Alex Bennée
  Cc: Stefano Stabellini, Anthony Perard, Thomas Huth, Paul Durrant,
	qemu-block, John Snow, xen-devel

On 29/01/21 20:44, Philippe Mathieu-Daudé wrote:
> hw/ide/ioport.c has a strong dependency on hw/isa/isa-bus.c:
> 
>    /usr/bin/ld: libcommon.fa.p/hw_ide_ioport.c.o: in function `ide_init_ioport':
>    /usr/bin/ld: hw/ide/ioport.c:61: undefined reference to `isa_register_portio_list'
> 
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
>   hw/ide/Kconfig | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/hw/ide/Kconfig b/hw/ide/Kconfig
> index 5d9106b1ac2..41cdd9cbe03 100644
> --- a/hw/ide/Kconfig
> +++ b/hw/ide/Kconfig
> @@ -12,7 +12,7 @@ config IDE_PCI
>   
>   config IDE_ISA
>       bool
> -    depends on ISA_BUS
> +    select ISA_BUS
>       select IDE_QDEV
>   
>   config IDE_PIIX

This is incorrect.  Buses are "depended on", not selected, and this is 
documented in docs/devel/kconfig.rst.

Paolo



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [RFC PATCH 2/4] hw/ide/Kconfig: IDE_PIIX requires IDE_ISA
  2021-01-29 19:44 ` [RFC PATCH 2/4] hw/ide/Kconfig: IDE_PIIX requires IDE_ISA Philippe Mathieu-Daudé
@ 2021-01-29 20:00   ` Paolo Bonzini
  0 siblings, 0 replies; 8+ messages in thread
From: Paolo Bonzini @ 2021-01-29 20:00 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé, qemu-devel, Alex Bennée
  Cc: Stefano Stabellini, Anthony Perard, Thomas Huth, Paul Durrant,
	qemu-block, John Snow, xen-devel

On 29/01/21 20:44, Philippe Mathieu-Daudé wrote:
> hw/ide/piix.c has a strong dependency on hw/isa/isa-bus.c:
> 
>    /usr/bin/ld: libcommon.fa.p/hw_ide_piix.c.o: in function `pci_piix_init_ports':
>    /usr/bin/ld: hw/ide/piix.c:141: undefined reference to `isa_get_irq'
> 
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
>   hw/ide/Kconfig | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/hw/ide/Kconfig b/hw/ide/Kconfig
> index 41cdd9cbe03..0f5d316558b 100644
> --- a/hw/ide/Kconfig
> +++ b/hw/ide/Kconfig
> @@ -17,6 +17,7 @@ config IDE_ISA
>   
>   config IDE_PIIX
>       bool
> +    select IDE_ISA
>       select IDE_PCI
>       select IDE_QDEV
>   
> 

This is also incorrect, it should be "depends on ISA_BUS".

Paolo



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [RFC PATCH 3/4] hw/xen/Kconfig: Introduce XEN_PV config
  2021-01-29 19:44 ` [RFC PATCH 3/4] hw/xen/Kconfig: Introduce XEN_PV config Philippe Mathieu-Daudé
@ 2021-01-29 20:01   ` Paolo Bonzini
  0 siblings, 0 replies; 8+ messages in thread
From: Paolo Bonzini @ 2021-01-29 20:01 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé, qemu-devel, Alex Bennée
  Cc: Stefano Stabellini, Anthony Perard, Thomas Huth, Paul Durrant,
	qemu-block, John Snow, xen-devel

On 29/01/21 20:44, 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@amsat.org>
> ---
>   hw/Kconfig     | 1 +
>   hw/xen/Kconfig | 6 ++++++
>   2 files changed, 7 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..15944144a17
> --- /dev/null
> +++ b/hw/xen/Kconfig
> @@ -0,0 +1,6 @@
> +config XEN_PV
> +    bool
> +    depends on XEN
> +    select PCI
> +    select USB
> +    select IDE_PIIX
> 

Since you're hacking around you can also "select ISA_BUS" here, but the 
right solution would be to have a "config XEN_FV" and leave 
hw/i386/xen/xen_platform.c out of XEN_PV.

Paolo



^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2021-01-29 20:01 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-29 19:44 [RFC PATCH 0/4] hw/xen: Fixes to only build the XEN_PV machine Philippe Mathieu-Daudé
2021-01-29 19:44 ` [RFC PATCH 1/4] hw/ide/Kconfig: IDE_ISA requires ISA_BUS Philippe Mathieu-Daudé
2021-01-29 19:59   ` Paolo Bonzini
2021-01-29 19:44 ` [RFC PATCH 2/4] hw/ide/Kconfig: IDE_PIIX requires IDE_ISA Philippe Mathieu-Daudé
2021-01-29 20:00   ` Paolo Bonzini
2021-01-29 19:44 ` [RFC PATCH 3/4] hw/xen/Kconfig: Introduce XEN_PV config Philippe Mathieu-Daudé
2021-01-29 20:01   ` Paolo Bonzini
2021-01-29 19:44 ` [RFC PATCH 4/4] hw/xen: Have the xenpv machine select 9pfs Philippe Mathieu-Daudé

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).