All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PULL v2 00/56] Misc patches for 2018-05-31
@ 2018-06-01 17:15 Paolo Bonzini
  2018-06-01 17:15 ` [Qemu-devel] [PULL 10/56] bsd-user: include "exec/exec-all.h" which provides mmap_lock/unlock" Paolo Bonzini
                   ` (3 more replies)
  0 siblings, 4 replies; 10+ messages in thread
From: Paolo Bonzini @ 2018-06-01 17:15 UTC (permalink / raw)
  To: qemu-devel

The following changes since commit 5a5c383b1373aeb6c87a0d6060f6c3dc7c53082b:

  Merge remote-tracking branch 'remotes/vivier2/tags/linux-user-for-2.13-pull-request' into staging (2018-05-25 10:04:36 +0100)

are available in the Git repository at:

  git://github.com/bonzini/qemu.git tags/for-upstream

for you to fetch changes up to b5dfdb082fc350f3e68dfa61dc988d97cad28cfe:

  hw: make virtio devices configurable via default-configs/ (2018-06-01 15:14:31 +0200)

----------------------------------------------------------------
* Linux header upgrade (Peter)
* firmware.json definition (Laszlo)
* IPMI migration fix (Corey)
* QOM improvements (Alexey, Philippe, me)
* Memory API cleanups (Jay, me, Tristan, Peter)
* WHPX fixes and improvements (Lucian)
* Chardev fixes (Marc-André)
* IOMMU documentation improvements (Peter)
* Coverity fixes (Peter, Philippe)
* Include cleanup (Philippe)
* -clock deprecation (Thomas)
* Disable -sandbox unless CONFIG_SECCOMP (Yi Min Zhao)
* Configurability improvements (me)

----------------------------------------------------------------
Alex Williamson (1):
      virtio-gpu-3d: Define VIRTIO_GPU_CAPSET_VIRGL2 elsewhere

Alexey Kardashevskiy (1):
      qom: Document qom/device-list-properties implementation specific

Corey Minyard (2):
      vmstate: Add a VSTRUCT type
      ipmi: Use proper struct reference for KCS vmstate

Jay Zhou (1):
      memory: delete struct AddressSpaceOps

Laszlo Ersek (1):
      docs/interop: add "firmware.json"

Lucian Petrut (2):
      WHPX: dynamically load WHP libraries
      WHPX: fix some compiler warnings

Marc-André Lureau (1):
      mux: fix ctrl-a b again

Paolo Bonzini (8):
      bsd-user: include "exec/exec-all.h" which provides mmap_lock/unlock"
      nios2: do not include exec-all.h from cpu.h
      qom: support orphan objects in object_get_canonical_path
      virtio: free MemoryRegionCache when initialization fails
      memory: get rid of memory_region_init_reservation
      tcg: remove softfloat from --disable-tcg builds
      hw: allow compiling out SCSI
      hw: make virtio devices configurable via default-configs/

Patryk Olszewski (1):
      char: Remove unwanted crlf conversion

Peter Maydell (8):
      memory.h: Fix typo in documentation comment
      memfd: Avoid Coverity warning about integer overflow
      exec.c: Initialize sa_flags passed to sigaction()
      scripts/update-linux-headers: Handle __aligned_u64
      scripts/update-linux-headers: Handle kernel license no longer being one file
      target/i386/kvm.c: Handle renaming of KVM_HINTS_DEDICATED
      Update Linux headers to 4.17-rc6
      target/i386/kvm.c: Remove compatibility shim for KVM_HINTS_REALTIME

Philippe Mathieu-Daudé (27):
      vfio: Include "exec/address-spaces.h" directly in the source file
      accel: Do not include "exec/address-spaces.h" if it is not necessary
      target: Do not include "exec/address-spaces.h" if it is not necessary
      memory: Do not include "exec/ioport.h" if it is not necessary
      target/i386: Do not include "exec/ioport.h" if it is not necessary
      target/xtensa: Include "qemu/timer.h" to use NANOSECONDS_PER_SECOND
      target/ppc: Include "exec/exec-all.h" which provides tlb_flush()
      target/hppa: Include "qemu/log.h" to use qemu_log()
      target: Do not include "exec/exec-all.h" if it is not necessary
      hw: Do not include "exec/ioport.h" if it is not necessary
      hw: Do not include "exec/address-spaces.h" if it is not necessary
      hw: Do not include "sysemu/block-backend.h" if it is not necessary
      hw: Do not include "sysemu/blockdev.h" if it is not necessary
      hw: Do not include "sysemu/blockdev.h" if it is not necessary
      hw/block/nvme: Include "qemu/cutils.h" directly in the source file
      hw/misc/mips_itu: Cleanup includes
      hw/misc/sga: Use the correct ISA include
      hw/hppa: Remove unused include
      hw/i386/pc: Remove unused include
      hw/ide: Remove unused include
      hw: Clean "hw/devices.h" includes
      hw/isa/superio: Fix inconsistent use of Chardev->be
      gdbstub: Prevent fd leakage
      hw/i2c/smbus: Use DeviceClass::realize instead of SMBusDeviceClass::init
      hw/i2c: Use DeviceClass::realize instead of I2CSlaveClass::init
      qdev: Simplify the SysBusDeviceClass::init path
      qdev: Remove DeviceClass::init() and ::exit()

Thomas Huth (1):
      qemu-options: Mark the non-functional -clock option as deprecated

Tristan Burgess (1):
      memory: Make operations using MemoryRegionIoeventfd struct pass by pointer.

Yi Min Zhao (1):
      sandbox: disable -sandbox if CONFIG_SECCOMP undefined

 Makefile.target                                    |   2 +-
 accel/tcg/cpu-exec.c                               |   1 -
 bsd-user/mmap.c                                    |   1 +
 bsd-user/qemu.h                                    |   1 -
 chardev/char-mux.c                                 |   1 +
 chardev/char-serial.c                              |   2 +-
 chardev/char-stdio.c                               |   2 +-
 configure                                          |  15 +-
 default-configs/arm-softmmu.mak                    |   1 +
 default-configs/hppa-softmmu.mak                   |   2 -
 default-configs/mips-softmmu-common.mak            |   1 +
 default-configs/pci.mak                            |   5 +-
 default-configs/riscv32-softmmu.mak                |   3 +-
 default-configs/riscv64-softmmu.mak                |   3 +-
 default-configs/s390x-softmmu.mak                  |   4 +-
 default-configs/sparc-softmmu.mak                  |   1 +
 default-configs/usb.mak                            |   1 +
 default-configs/virtio.mak                         |  14 +
 docs/devel/memory.txt                              |   5 +-
 docs/interop/firmware.json                         | 540 +++++++++++++++++++++
 exec.c                                             |   1 +
 gdbstub.c                                          |   1 +
 hw/9pfs/Makefile.objs                              |   6 +-
 hw/Makefile.objs                                   |   2 +-
 hw/acpi/pcihp.c                                    |   1 -
 hw/acpi/piix4.c                                    |   1 -
 hw/arm/aspeed.c                                    |   1 -
 hw/arm/bcm2836.c                                   |   1 -
 hw/arm/collie.c                                    |   1 -
 hw/arm/gumstix.c                                   |   1 -
 hw/arm/mainstone.c                                 |   1 -
 hw/arm/nseries.c                                   |   1 -
 hw/arm/omap1.c                                     |   2 -
 hw/arm/omap2.c                                     |   2 -
 hw/arm/omap_sx1.c                                  |   1 -
 hw/arm/pxa2xx.c                                    |   1 -
 hw/arm/spitz.c                                     |   1 -
 hw/arm/versatilepb.c                               |   1 -
 hw/arm/vexpress.c                                  |   1 -
 hw/arm/virt.c                                      |   1 -
 hw/arm/xilinx_zynq.c                               |   1 -
 hw/arm/xlnx-zcu102.c                               |   1 -
 hw/arm/z2.c                                        |   1 -
 hw/audio/wm8750.c                                  |   8 +-
 hw/block/Makefile.objs                             |   6 +-
 hw/block/dataplane/virtio-blk.c                    |   1 -
 hw/block/m25p80.c                                  |   1 -
 hw/block/nvme.c                                    |   1 +
 hw/block/nvme.h                                    |   1 -
 hw/block/onenand.c                                 |   2 -
 hw/block/pflash_cfi01.c                            |   1 -
 hw/block/pflash_cfi02.c                            |   1 -
 hw/block/virtio-blk.c                              |   1 -
 hw/char/Makefile.objs                              |   2 +-
 hw/char/mcf_uart.c                                 |   1 -
 hw/char/serial.c                                   |   1 -
 hw/char/sh_serial.c                                |   1 -
 hw/core/loader-fit.c                               |   1 -
 hw/core/platform-bus.c                             |   1 -
 hw/core/qdev-properties.c                          |   1 -
 hw/core/qdev.c                                     |  28 --
 hw/core/sysbus.c                                   |  12 +-
 hw/cris/axis_dev88.c                               |   1 -
 hw/display/Makefile.objs                           |   4 +-
 hw/display/sm501.c                                 |   1 -
 hw/display/ssd0303.c                               |   9 +-
 hw/display/tc6393xb.c                              |   1 -
 hw/gpio/max7310.c                                  |   9 +-
 hw/hppa/hppa_sys.h                                 |   1 -
 hw/i2c/core.c                                      |  13 -
 hw/i2c/smbus.c                                     |   9 -
 hw/i2c/smbus_eeprom.c                              |   5 +-
 hw/i386/kvm/i8254.c                                |   2 +-
 hw/i386/kvm/i8259.c                                |   4 +-
 hw/i386/kvm/ioapic.c                               |   2 +-
 hw/i386/kvmvapic.c                                 |   1 -
 hw/i386/pc.c                                       |   1 -
 hw/i386/xen/xen-mapcache.c                         |   1 -
 hw/ide/core.c                                      |   1 -
 hw/ide/pci.c                                       |   1 -
 hw/ide/via.c                                       |   1 -
 hw/input/Makefile.objs                             |   6 +-
 hw/input/lm832x.c                                  |   9 +-
 hw/ipmi/isa_ipmi_kcs.c                             |  81 +++-
 hw/isa/isa-superio.c                               |   5 +-
 hw/lm32/lm32_boards.c                              |   1 -
 hw/lm32/milkymist.c                                |   1 -
 hw/m68k/mcf5206.c                                  |   1 -
 hw/m68k/mcf_intc.c                                 |   1 -
 hw/microblaze/petalogix_ml605_mmu.c                |   1 -
 hw/microblaze/petalogix_s3adsp1800_mmu.c           |   1 -
 hw/mips/mips_malta.c                               |   1 -
 hw/mips/mips_r4k.c                                 |   1 -
 hw/misc/arm_integrator_debug.c                     |   1 -
 hw/misc/mips_itu.c                                 |   5 +-
 hw/misc/sga.c                                      |   2 +-
 hw/misc/tmp105.c                                   |   7 +-
 hw/misc/tmp421.c                                   |   8 +-
 hw/net/Makefile.objs                               |   2 +-
 hw/net/mcf_fec.c                                   |   1 -
 hw/net/ne2000-isa.c                                |   1 -
 hw/nvram/eeprom_at24c.c                            |  24 +-
 hw/pci-host/versatile.c                            |   1 -
 hw/ppc/ppc405_boards.c                             |   1 -
 hw/ppc/sam460ex.c                                  |   1 -
 hw/ppc/spapr.c                                     |   1 -
 hw/ppc/virtex_ml507.c                              |   2 -
 hw/riscv/riscv_htif.c                              |   1 -
 hw/s390x/virtio-ccw.c                              |   2 -
 hw/scsi/Makefile.objs                              |   2 +-
 hw/scsi/mptsas.c                                   |   1 -
 hw/scsi/scsi-generic.c                             |   1 -
 hw/sd/pl181.c                                      |   1 -
 hw/sd/sdhci.c                                      |   2 -
 hw/sd/ssi-sd.c                                     |   1 -
 hw/sh4/r2d.c                                       |   1 -
 hw/sh4/sh7750.c                                    |   1 -
 hw/timer/sh_timer.c                                |   1 -
 hw/timer/twl92230.c                                |  11 +-
 hw/usb/dev-storage.c                               |   1 -
 hw/vfio/ccw.c                                      |   1 +
 hw/vfio/platform.c                                 |   1 +
 hw/virtio/Makefile.objs                            |  16 +-
 hw/virtio/virtio-pci.c                             |   1 -
 hw/virtio/virtio.c                                 |  33 +-
 hw/xen/xen_devconfig.c                             |   1 -
 hw/xtensa/xtfpga.c                                 |   1 -
 include/exec/memory.h                              |  23 -
 include/hw/arm/allwinner-a10.h                     |   1 -
 include/hw/arm/bcm2835_peripherals.h               |   1 -
 include/hw/devices.h                               |   7 +-
 include/hw/display/bcm2835_fb.h                    |   1 -
 include/hw/dma/bcm2835_dma.h                       |   1 -
 include/hw/i2c/i2c.h                               |   3 -
 include/hw/i2c/smbus.h                             |   1 -
 include/hw/misc/bcm2835_mbox.h                     |   1 -
 include/hw/misc/bcm2835_property.h                 |   1 -
 include/hw/misc/mips_itu.h                         |   2 +
 include/hw/qdev-core.h                             |  20 +-
 include/hw/sh4/sh_intc.h                           |   1 -
 include/hw/vfio/vfio-common.h                      |   1 -
 include/hw/virtio/virtio-access.h                  |   1 -
 include/hw/virtio/virtio-gpu.h                     |   6 +
 include/migration/vmstate.h                        |  45 ++
 include/standard-headers/asm-x86/hyperv.h          |   1 -
 include/standard-headers/asm-x86/kvm_para.h        |   2 +-
 include/standard-headers/linux/ethtool.h           |  36 +-
 include/standard-headers/linux/input.h             |   4 +-
 include/standard-headers/linux/pci_regs.h          |   7 +-
 include/standard-headers/linux/virtio_balloon.h    |  15 +
 include/standard-headers/linux/virtio_gpu.h        |   1 -
 include/standard-headers/rdma/vmw_pvrdma-abi.h     |  49 +-
 include/sysemu/seccomp.h                           |   3 +-
 linux-headers/COPYING                              | 358 +-------------
 .../LICENSES/exceptions/Linux-syscall-note         |  25 +
 linux-headers/LICENSES/preferred/BSD-2-Clause      |  32 ++
 linux-headers/LICENSES/preferred/BSD-3-Clause      |  36 ++
 linux-headers/LICENSES/preferred/GPL-2.0           | 353 ++++++++++++++
 linux-headers/asm-arm/kvm.h                        |  15 +
 linux-headers/asm-arm64/kvm.h                      |   6 +
 linux-headers/asm-x86/hyperv.h                     |   1 -
 linux-headers/asm-x86/kvm.h                        |  19 +-
 linux-headers/linux/kvm.h                          |  30 +-
 linux-headers/linux/vfio.h                         |  27 ++
 memory.c                                           |  47 +-
 migration/vmstate.c                                |  25 +-
 monitor.c                                          |   1 -
 qapi/misc.json                                     |   8 +
 qemu-doc.texi                                      |   5 +
 qemu-seccomp.c                                     | 121 ++++-
 qom/object.c                                       |  28 +-
 scripts/update-linux-headers.sh                    |  17 +-
 target/arm/arm-powerctl.c                          |   1 -
 target/arm/arm_ldst.h                              |   1 -
 target/arm/crypto_helper.c                         |   1 -
 target/arm/iwmmxt_helper.c                         |   1 -
 target/arm/neon_helper.c                           |   1 -
 target/arm/psci.c                                  |   1 -
 target/arm/vec_helper.c                            |   1 -
 target/cris/cpu.c                                  |   1 -
 target/hppa/helper.c                               |   1 -
 target/hppa/int_helper.c                           |   2 +-
 target/i386/hax-all.c                              |   2 -
 target/i386/hax-mem.c                              |   1 -
 target/i386/hax-windows.c                          |   1 -
 target/i386/hvf/hvf.c                              |   2 -
 target/i386/hvf/x86_task.c                         |   3 -
 target/i386/kvm.c                                  |   3 +-
 target/i386/whpx-all.c                             | 262 ++++++----
 target/lm32/cpu.c                                  |   1 -
 target/m68k/cpu.c                                  |   1 -
 target/moxie/cpu.c                                 |   1 -
 target/moxie/mmu.c                                 |   1 -
 target/nios2/cpu.h                                 |   1 -
 target/nios2/op_helper.c                           |   1 +
 target/openrisc/cpu.c                              |   1 -
 target/ppc/helper_regs.h                           |   1 +
 target/ppc/int_helper.c                            |   1 -
 target/s390x/cpu.c                                 |   1 -
 target/s390x/diag.c                                |   1 -
 target/s390x/helper.c                              |   1 -
 target/s390x/kvm.c                                 |   1 -
 target/s390x/mem_helper.c                          |   1 -
 target/s390x/misc_helper.c                         |   1 -
 target/sparc/mmu_helper.c                          |   1 -
 target/tilegx/cpu.c                                |   1 -
 target/xtensa/core-dc232b.c                        |   2 +-
 target/xtensa/core-dc233c.c                        |   1 -
 target/xtensa/core-de212.c                         |   1 -
 target/xtensa/core-fsf.c                           |   1 -
 target/xtensa/core-sample_controller.c             |   1 -
 target/xtensa/cpu.c                                |   1 -
 target/xtensa/import_core.sh                       |   1 -
 tcg/tcg-op-vec.c                                   |   1 -
 tests/test-char.c                                  |   8 +
 util/memfd.c                                       |   2 +-
 vl.c                                               | 125 +----
 217 files changed, 1839 insertions(+), 1015 deletions(-)
 create mode 100644 default-configs/virtio.mak
 create mode 100644 docs/interop/firmware.json
 delete mode 100644 include/standard-headers/asm-x86/hyperv.h
 create mode 100644 linux-headers/LICENSES/exceptions/Linux-syscall-note
 create mode 100644 linux-headers/LICENSES/preferred/BSD-2-Clause
 create mode 100644 linux-headers/LICENSES/preferred/BSD-3-Clause
 create mode 100644 linux-headers/LICENSES/preferred/GPL-2.0
 delete mode 100644 linux-headers/asm-x86/hyperv.h
-- 
2.17.0

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

* [Qemu-devel] [PULL 10/56] bsd-user: include "exec/exec-all.h" which provides mmap_lock/unlock"
  2018-06-01 17:15 [Qemu-devel] [PULL v2 00/56] Misc patches for 2018-05-31 Paolo Bonzini
@ 2018-06-01 17:15 ` Paolo Bonzini
  2018-06-01 17:15 ` [Qemu-devel] [PULL 55/56] hw: allow compiling out SCSI Paolo Bonzini
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 10+ messages in thread
From: Paolo Bonzini @ 2018-06-01 17:15 UTC (permalink / raw)
  To: qemu-devel

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 bsd-user/mmap.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/bsd-user/mmap.c b/bsd-user/mmap.c
index 20cd29d145..17f4cd80aa 100644
--- a/bsd-user/mmap.c
+++ b/bsd-user/mmap.c
@@ -21,6 +21,7 @@
 #include "qemu.h"
 #include "qemu-common.h"
 #include "bsd-mman.h"
+#include "exec/exec-all.h"
 
 //#define DEBUG_MMAP
 
-- 
2.17.0

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

* [Qemu-devel] [PULL 55/56] hw: allow compiling out SCSI
  2018-06-01 17:15 [Qemu-devel] [PULL v2 00/56] Misc patches for 2018-05-31 Paolo Bonzini
  2018-06-01 17:15 ` [Qemu-devel] [PULL 10/56] bsd-user: include "exec/exec-all.h" which provides mmap_lock/unlock" Paolo Bonzini
@ 2018-06-01 17:15 ` Paolo Bonzini
  2018-06-01 17:15 ` [Qemu-devel] [PULL 56/56] hw: make virtio devices configurable via default-configs/ Paolo Bonzini
  2018-06-04  9:14 ` [Qemu-devel] [PULL v2 00/56] Misc patches for 2018-05-31 Peter Maydell
  3 siblings, 0 replies; 10+ messages in thread
From: Paolo Bonzini @ 2018-06-01 17:15 UTC (permalink / raw)
  To: qemu-devel

Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 default-configs/mips-softmmu-common.mak | 1 +
 default-configs/pci.mak                 | 1 +
 default-configs/riscv32-softmmu.mak     | 1 +
 default-configs/riscv64-softmmu.mak     | 1 +
 default-configs/s390x-softmmu.mak       | 1 +
 default-configs/sparc-softmmu.mak       | 1 +
 default-configs/usb.mak                 | 1 +
 hw/Makefile.objs                        | 2 +-
 8 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/default-configs/mips-softmmu-common.mak b/default-configs/mips-softmmu-common.mak
index e31f046b3b..fae2347ee7 100644
--- a/default-configs/mips-softmmu-common.mak
+++ b/default-configs/mips-softmmu-common.mak
@@ -4,6 +4,7 @@ include pci.mak
 include sound.mak
 include usb.mak
 CONFIG_ESP=y
+CONFIG_SCSI=y
 CONFIG_VGA_ISA=y
 CONFIG_VGA_ISA_MM=y
 CONFIG_VGA_CIRRUS=y
diff --git a/default-configs/pci.mak b/default-configs/pci.mak
index 35e7596949..163dd814c7 100644
--- a/default-configs/pci.mak
+++ b/default-configs/pci.mak
@@ -15,6 +15,7 @@ CONFIG_PCNET_COMMON=y
 CONFIG_AC97=y
 CONFIG_HDA=y
 CONFIG_ES1370=y
+CONFIG_SCSI=y
 CONFIG_LSI_SCSI_PCI=y
 CONFIG_VMW_PVSCSI_SCSI_PCI=y
 CONFIG_MEGASAS_SCSI_PCI=y
diff --git a/default-configs/riscv32-softmmu.mak b/default-configs/riscv32-softmmu.mak
index f9e742120c..9159a4a8af 100644
--- a/default-configs/riscv32-softmmu.mak
+++ b/default-configs/riscv32-softmmu.mak
@@ -2,3 +2,4 @@
 
 CONFIG_SERIAL=y
 CONFIG_VIRTIO=y
+CONFIG_SCSI=y
diff --git a/default-configs/riscv64-softmmu.mak b/default-configs/riscv64-softmmu.mak
index f9e742120c..9159a4a8af 100644
--- a/default-configs/riscv64-softmmu.mak
+++ b/default-configs/riscv64-softmmu.mak
@@ -2,3 +2,4 @@
 
 CONFIG_SERIAL=y
 CONFIG_VIRTIO=y
+CONFIG_SCSI=y
diff --git a/default-configs/s390x-softmmu.mak b/default-configs/s390x-softmmu.mak
index 2f4bfe73b4..729033b25a 100644
--- a/default-configs/s390x-softmmu.mak
+++ b/default-configs/s390x-softmmu.mak
@@ -2,6 +2,7 @@ CONFIG_PCI=y
 CONFIG_VIRTIO_PCI=$(CONFIG_PCI)
 CONFIG_VHOST_USER_SCSI=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
 CONFIG_VHOST_USER_BLK=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
+CONFIG_SCSI=y
 CONFIG_VIRTIO=y
 CONFIG_SCLPCONSOLE=y
 CONFIG_TERMINAL3270=y
diff --git a/default-configs/sparc-softmmu.mak b/default-configs/sparc-softmmu.mak
index 004b0f4e77..12f97eeb20 100644
--- a/default-configs/sparc-softmmu.mak
+++ b/default-configs/sparc-softmmu.mak
@@ -2,6 +2,7 @@
 
 CONFIG_ISA_BUS=y
 CONFIG_ECC=y
+CONFIG_SCSI=y
 CONFIG_ESP=y
 CONFIG_ESCC=y
 CONFIG_M48T59=y
diff --git a/default-configs/usb.mak b/default-configs/usb.mak
index f4b85684f0..e42cfeabbe 100644
--- a/default-configs/usb.mak
+++ b/default-configs/usb.mak
@@ -3,6 +3,7 @@ CONFIG_USB_TABLET_WACOM=y
 CONFIG_USB_STORAGE_BOT=y
 CONFIG_USB_STORAGE_UAS=y
 CONFIG_USB_STORAGE_MTP=y
+CONFIG_SCSI=y
 CONFIG_USB_SMARTCARD=y
 CONFIG_USB_AUDIO=y
 CONFIG_USB_SERIAL=y
diff --git a/hw/Makefile.objs b/hw/Makefile.objs
index 6a0ffe0afd..a19c1417ed 100644
--- a/hw/Makefile.objs
+++ b/hw/Makefile.objs
@@ -23,7 +23,7 @@ devices-dirs-$(CONFIG_SOFTMMU) += nvram/
 devices-dirs-$(CONFIG_SOFTMMU) += pci/
 devices-dirs-$(CONFIG_PCI) += pci-bridge/ pci-host/
 devices-dirs-$(CONFIG_SOFTMMU) += pcmcia/
-devices-dirs-$(CONFIG_SOFTMMU) += scsi/
+devices-dirs-$(CONFIG_SCSI) += scsi/
 devices-dirs-$(CONFIG_SOFTMMU) += sd/
 devices-dirs-$(CONFIG_SOFTMMU) += ssi/
 devices-dirs-$(CONFIG_SOFTMMU) += timer/
-- 
2.17.0

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

* [Qemu-devel] [PULL 56/56] hw: make virtio devices configurable via default-configs/
  2018-06-01 17:15 [Qemu-devel] [PULL v2 00/56] Misc patches for 2018-05-31 Paolo Bonzini
  2018-06-01 17:15 ` [Qemu-devel] [PULL 10/56] bsd-user: include "exec/exec-all.h" which provides mmap_lock/unlock" Paolo Bonzini
  2018-06-01 17:15 ` [Qemu-devel] [PULL 55/56] hw: allow compiling out SCSI Paolo Bonzini
@ 2018-06-01 17:15 ` Paolo Bonzini
  2018-06-01 17:26   ` Philippe Mathieu-Daudé
  2018-06-30 12:58   ` Peter Maydell
  2018-06-04  9:14 ` [Qemu-devel] [PULL v2 00/56] Misc patches for 2018-05-31 Peter Maydell
  3 siblings, 2 replies; 10+ messages in thread
From: Paolo Bonzini @ 2018-06-01 17:15 UTC (permalink / raw)
  To: qemu-devel

This is only half of the work, because the proxy devices (virtio-*-pci,
virtio-*-ccw, etc.) are still included unconditionally.  It is still a
move in the right direction.

Based-on: <20180522194943.24871-1-pbonzini@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 default-configs/arm-softmmu.mak     |  1 +
 default-configs/hppa-softmmu.mak    |  2 --
 default-configs/pci.mak             |  4 +---
 default-configs/riscv32-softmmu.mak |  4 ++--
 default-configs/riscv64-softmmu.mak |  4 ++--
 default-configs/s390x-softmmu.mak   |  5 +----
 default-configs/virtio.mak          | 14 ++++++++++++++
 hw/9pfs/Makefile.objs               |  6 ++++--
 hw/block/Makefile.objs              |  6 ++----
 hw/char/Makefile.objs               |  2 +-
 hw/display/Makefile.objs            |  4 ++--
 hw/input/Makefile.objs              |  6 +++---
 hw/net/Makefile.objs                |  2 +-
 hw/scsi/Makefile.objs               |  2 +-
 hw/virtio/Makefile.objs             | 16 +++++++++-------
 15 files changed, 44 insertions(+), 34 deletions(-)
 create mode 100644 default-configs/virtio.mak

diff --git a/default-configs/arm-softmmu.mak b/default-configs/arm-softmmu.mak
index dd29e741c2..8ba2558b36 100644
--- a/default-configs/arm-softmmu.mak
+++ b/default-configs/arm-softmmu.mak
@@ -41,6 +41,7 @@ CONFIG_USB=y
 CONFIG_USB_MUSB=y
 CONFIG_USB_EHCI_SYSBUS=y
 CONFIG_PLATFORM_BUS=y
+CONFIG_VIRTIO_MMIO=y
 
 CONFIG_ARM11MPCORE=y
 CONFIG_A9MPCORE=y
diff --git a/default-configs/hppa-softmmu.mak b/default-configs/hppa-softmmu.mak
index 013e5f046f..4badc0521e 100644
--- a/default-configs/hppa-softmmu.mak
+++ b/default-configs/hppa-softmmu.mak
@@ -4,8 +4,6 @@ CONFIG_SERIAL=y
 CONFIG_SERIAL_ISA=y
 CONFIG_ISA_BUS=y
 CONFIG_I8259=y
-CONFIG_VIRTIO_PCI=$(CONFIG_PCI)
-CONFIG_VIRTIO=y
 CONFIG_E1000_PCI=y
 CONFIG_IDE_ISA=y
 CONFIG_IDE_CMD646=y
diff --git a/default-configs/pci.mak b/default-configs/pci.mak
index 163dd814c7..de53d20ac6 100644
--- a/default-configs/pci.mak
+++ b/default-configs/pci.mak
@@ -2,7 +2,7 @@ CONFIG_PCI=y
 # For now, CONFIG_IDE_CORE requires ISA, so we enable it here
 CONFIG_ISA_BUS=y
 CONFIG_VIRTIO_PCI=y
-CONFIG_VIRTIO=y
+include virtio.mak
 CONFIG_USB_UHCI=y
 CONFIG_USB_OHCI=y
 CONFIG_USB_EHCI=y
@@ -46,5 +46,3 @@ CONFIG_VGA=y
 CONFIG_VGA_PCI=y
 CONFIG_IVSHMEM_DEVICE=$(CONFIG_IVSHMEM)
 CONFIG_ROCKER=y
-CONFIG_VHOST_USER_SCSI=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
-CONFIG_VHOST_USER_BLK=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
diff --git a/default-configs/riscv32-softmmu.mak b/default-configs/riscv32-softmmu.mak
index 9159a4a8af..20e670d99c 100644
--- a/default-configs/riscv32-softmmu.mak
+++ b/default-configs/riscv32-softmmu.mak
@@ -1,5 +1,5 @@
 # Default configuration for riscv-softmmu
 
 CONFIG_SERIAL=y
-CONFIG_VIRTIO=y
-CONFIG_SCSI=y
+CONFIG_VIRTIO_MMIO=y
+include virtio.mak
diff --git a/default-configs/riscv64-softmmu.mak b/default-configs/riscv64-softmmu.mak
index 9159a4a8af..20e670d99c 100644
--- a/default-configs/riscv64-softmmu.mak
+++ b/default-configs/riscv64-softmmu.mak
@@ -1,5 +1,5 @@
 # Default configuration for riscv-softmmu
 
 CONFIG_SERIAL=y
-CONFIG_VIRTIO=y
-CONFIG_SCSI=y
+CONFIG_VIRTIO_MMIO=y
+include virtio.mak
diff --git a/default-configs/s390x-softmmu.mak b/default-configs/s390x-softmmu.mak
index 729033b25a..d6b67d50f0 100644
--- a/default-configs/s390x-softmmu.mak
+++ b/default-configs/s390x-softmmu.mak
@@ -1,9 +1,6 @@
 CONFIG_PCI=y
 CONFIG_VIRTIO_PCI=$(CONFIG_PCI)
-CONFIG_VHOST_USER_SCSI=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
-CONFIG_VHOST_USER_BLK=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
-CONFIG_SCSI=y
-CONFIG_VIRTIO=y
+include virtio.mak
 CONFIG_SCLPCONSOLE=y
 CONFIG_TERMINAL3270=y
 CONFIG_S390_FLIC=y
diff --git a/default-configs/virtio.mak b/default-configs/virtio.mak
new file mode 100644
index 0000000000..1304849018
--- /dev/null
+++ b/default-configs/virtio.mak
@@ -0,0 +1,14 @@
+CONFIG_VHOST_USER_SCSI=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
+CONFIG_VHOST_USER_BLK=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
+CONFIG_VIRTIO=y
+CONFIG_VIRTIO_9P=y
+CONFIG_VIRTIO_BALLOON=y
+CONFIG_VIRTIO_BLK=y
+CONFIG_VIRTIO_CRYPTO=y
+CONFIG_VIRTIO_GPU=y
+CONFIG_VIRTIO_INPUT=y
+CONFIG_VIRTIO_NET=y
+CONFIG_VIRTIO_RNG=y
+CONFIG_SCSI=y
+CONFIG_VIRTIO_SCSI=y
+CONFIG_VIRTIO_SERIAL=y
diff --git a/hw/9pfs/Makefile.objs b/hw/9pfs/Makefile.objs
index fd90b62900..e3fa673665 100644
--- a/hw/9pfs/Makefile.objs
+++ b/hw/9pfs/Makefile.objs
@@ -1,3 +1,4 @@
+ifeq ($(call lor,$(CONFIG_VIRTIO_9P),$(CONFIG_XEN)),y)
 common-obj-y  = 9p.o 9p-util.o
 common-obj-y += 9p-local.o 9p-xattr.o
 common-obj-y += 9p-xattr-user.o 9p-posix-acl.o
@@ -5,6 +6,7 @@ common-obj-y += coth.o cofs.o codir.o cofile.o
 common-obj-y += coxattr.o 9p-synth.o
 common-obj-$(CONFIG_OPEN_BY_HANDLE) +=  9p-handle.o
 common-obj-y += 9p-proxy.o
-common-obj-$(CONFIG_XEN) += xen-9p-backend.o
+endif
 
-obj-$(CONFIG_VIRTIO) += virtio-9p-device.o
+common-obj-$(CONFIG_XEN) += xen-9p-backend.o
+obj-$(CONFIG_VIRTIO_9P) += virtio-9p-device.o
diff --git a/hw/block/Makefile.objs b/hw/block/Makefile.objs
index 4c19a583c8..53ce5751ae 100644
--- a/hw/block/Makefile.objs
+++ b/hw/block/Makefile.objs
@@ -11,8 +11,6 @@ common-obj-$(CONFIG_NVME_PCI) += nvme.o
 
 obj-$(CONFIG_SH4) += tc58128.o
 
-obj-$(CONFIG_VIRTIO) += virtio-blk.o
-obj-$(CONFIG_VIRTIO) += dataplane/
-ifeq ($(CONFIG_VIRTIO),y)
+obj-$(CONFIG_VIRTIO_BLK) += virtio-blk.o
+obj-$(CONFIG_VIRTIO_BLK) += dataplane/
 obj-$(CONFIG_VHOST_USER_BLK) += vhost-user-blk.o
-endif
diff --git a/hw/char/Makefile.objs b/hw/char/Makefile.objs
index 1b979100b7..b570531291 100644
--- a/hw/char/Makefile.objs
+++ b/hw/char/Makefile.objs
@@ -6,7 +6,7 @@ common-obj-$(CONFIG_PL011) += pl011.o
 common-obj-$(CONFIG_SERIAL) += serial.o
 common-obj-$(CONFIG_SERIAL_ISA) += serial-isa.o
 common-obj-$(CONFIG_SERIAL_PCI) += serial-pci.o
-common-obj-$(CONFIG_VIRTIO) += virtio-console.o
+common-obj-$(CONFIG_VIRTIO_SERIAL) += virtio-console.o
 common-obj-$(CONFIG_XILINX) += xilinx_uartlite.o
 common-obj-$(CONFIG_XEN) += xen_console.o
 common-obj-$(CONFIG_CADENCE) += cadence_uart.o
diff --git a/hw/display/Makefile.objs b/hw/display/Makefile.objs
index d907b381ae..b5d97ab26d 100644
--- a/hw/display/Makefile.objs
+++ b/hw/display/Makefile.objs
@@ -36,8 +36,8 @@ obj-$(CONFIG_VGA) += vga.o
 
 common-obj-$(CONFIG_QXL) += qxl.o qxl-logger.o qxl-render.o
 
-obj-$(CONFIG_VIRTIO) += virtio-gpu.o virtio-gpu-3d.o
-obj-$(CONFIG_VIRTIO_PCI) += virtio-gpu-pci.o
+obj-$(CONFIG_VIRTIO_GPU) += virtio-gpu.o virtio-gpu-3d.o
+obj-$(call land,$(CONFIG_VIRTIO_GPU),$(CONFIG_VIRTIO_PCI)) += virtio-gpu-pci.o
 obj-$(CONFIG_VIRTIO_VGA) += virtio-vga.o
 virtio-gpu.o-cflags := $(VIRGL_CFLAGS)
 virtio-gpu.o-libs += $(VIRGL_LIBS)
diff --git a/hw/input/Makefile.objs b/hw/input/Makefile.objs
index 77e53e6883..c8b00f71ec 100644
--- a/hw/input/Makefile.objs
+++ b/hw/input/Makefile.objs
@@ -7,10 +7,10 @@ common-obj-y += ps2.o
 common-obj-$(CONFIG_STELLARIS_INPUT) += stellaris_input.o
 common-obj-$(CONFIG_TSC2005) += tsc2005.o
 
-common-obj-$(CONFIG_VIRTIO) += virtio-input.o
-common-obj-$(CONFIG_VIRTIO) += virtio-input-hid.o
+common-obj-$(CONFIG_VIRTIO_INPUT) += virtio-input.o
+common-obj-$(CONFIG_VIRTIO_INPUT) += virtio-input-hid.o
 ifeq ($(CONFIG_LINUX),y)
-common-obj-$(CONFIG_VIRTIO) += virtio-input-host.o
+common-obj-$(CONFIG_VIRTIO_INPUT) += virtio-input-host.o
 endif
 
 obj-$(CONFIG_MILKYMIST) += milkymist-softusb.o
diff --git a/hw/net/Makefile.objs b/hw/net/Makefile.objs
index ab22968641..fa461d4463 100644
--- a/hw/net/Makefile.objs
+++ b/hw/net/Makefile.objs
@@ -36,7 +36,7 @@ obj-$(CONFIG_MILKYMIST) += milkymist-minimac2.o
 obj-$(CONFIG_PSERIES) += spapr_llan.o
 obj-$(CONFIG_XILINX_ETHLITE) += xilinx_ethlite.o
 
-obj-$(CONFIG_VIRTIO) += virtio-net.o
+obj-$(CONFIG_VIRTIO_NET) += virtio-net.o
 obj-y += vhost_net.o
 
 obj-$(CONFIG_ETSEC) += fsl_etsec/etsec.o fsl_etsec/registers.o \
diff --git a/hw/scsi/Makefile.objs b/hw/scsi/Makefile.objs
index b188f7242b..718b4c2a68 100644
--- a/hw/scsi/Makefile.objs
+++ b/hw/scsi/Makefile.objs
@@ -8,7 +8,7 @@ common-obj-$(CONFIG_ESP) += esp.o
 common-obj-$(CONFIG_ESP_PCI) += esp-pci.o
 obj-$(CONFIG_PSERIES) += spapr_vscsi.o
 
-ifeq ($(CONFIG_VIRTIO),y)
+ifeq ($(CONFIG_VIRTIO_SCSI),y)
 obj-y += virtio-scsi.o virtio-scsi-dataplane.o
 obj-$(CONFIG_VHOST_SCSI) += vhost-scsi-common.o vhost-scsi.o
 obj-$(CONFIG_VHOST_USER_SCSI) += vhost-scsi-common.o vhost-user-scsi.o
diff --git a/hw/virtio/Makefile.objs b/hw/virtio/Makefile.objs
index 765d363c1f..1b2799cfd8 100644
--- a/hw/virtio/Makefile.objs
+++ b/hw/virtio/Makefile.objs
@@ -1,15 +1,17 @@
 ifeq ($(CONFIG_VIRTIO),y)
-common-obj-y += virtio-rng.o
-common-obj-$(CONFIG_VIRTIO_PCI) += virtio-pci.o
 common-obj-y += virtio-bus.o
-common-obj-y += virtio-mmio.o
+obj-y += virtio.o
+
+common-obj-$(CONFIG_VIRTIO_RNG) += virtio-rng.o
+common-obj-$(CONFIG_VIRTIO_PCI) += virtio-pci.o
+common-obj-$(CONFIG_VIRTIO_MMIO) += virtio-mmio.o
+obj-$(CONFIG_VIRTIO_BALLOON) += virtio-balloon.o
+obj-$(CONFIG_VIRTIO_CRYPTO) += virtio-crypto.o
+obj-$(call land,$(CONFIG_VIRTIO_CRYPTO),$(CONFIG_VIRTIO_PCI)) += virtio-crypto-pci.o
 
-obj-y += virtio.o virtio-balloon.o 
 obj-$(CONFIG_LINUX) += vhost.o vhost-backend.o vhost-user.o
 obj-$(CONFIG_VHOST_VSOCK) += vhost-vsock.o
-obj-y += virtio-crypto.o
-obj-$(CONFIG_VIRTIO_PCI) += virtio-crypto-pci.o
 endif
 
-common-obj-$(call lnot,$(CONFIG_LINUX)) += vhost-stub.o
+common-obj-$(call lnot,$(call land,$(CONFIG_VIRTIO),$(CONFIG_LINUX))) += vhost-stub.o
 common-obj-$(CONFIG_ALL) += vhost-stub.o
-- 
2.17.0

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

* Re: [Qemu-devel] [PULL 56/56] hw: make virtio devices configurable via default-configs/
  2018-06-01 17:15 ` [Qemu-devel] [PULL 56/56] hw: make virtio devices configurable via default-configs/ Paolo Bonzini
@ 2018-06-01 17:26   ` Philippe Mathieu-Daudé
  2018-06-01 17:31     ` Paolo Bonzini
  2018-06-30 12:58   ` Peter Maydell
  1 sibling, 1 reply; 10+ messages in thread
From: Philippe Mathieu-Daudé @ 2018-06-01 17:26 UTC (permalink / raw)
  To: Paolo Bonzini; +Cc: qemu-devel, Fam Zheng

On 06/01/2018 02:15 PM, Paolo Bonzini wrote:
> This is only half of the work, because the proxy devices (virtio-*-pci,
> virtio-*-ccw, etc.) are still included unconditionally.  It is still a
> move in the right direction.
> 
> Based-on: <20180522194943.24871-1-pbonzini@redhat.com>

Is this tag useful?

> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> ---
>  default-configs/arm-softmmu.mak     |  1 +
>  default-configs/hppa-softmmu.mak    |  2 --
>  default-configs/pci.mak             |  4 +---
>  default-configs/riscv32-softmmu.mak |  4 ++--
>  default-configs/riscv64-softmmu.mak |  4 ++--
>  default-configs/s390x-softmmu.mak   |  5 +----
>  default-configs/virtio.mak          | 14 ++++++++++++++
>  hw/9pfs/Makefile.objs               |  6 ++++--
>  hw/block/Makefile.objs              |  6 ++----
>  hw/char/Makefile.objs               |  2 +-
>  hw/display/Makefile.objs            |  4 ++--
>  hw/input/Makefile.objs              |  6 +++---
>  hw/net/Makefile.objs                |  2 +-
>  hw/scsi/Makefile.objs               |  2 +-
>  hw/virtio/Makefile.objs             | 16 +++++++++-------
>  15 files changed, 44 insertions(+), 34 deletions(-)
>  create mode 100644 default-configs/virtio.mak
> 
> diff --git a/default-configs/arm-softmmu.mak b/default-configs/arm-softmmu.mak
> index dd29e741c2..8ba2558b36 100644
> --- a/default-configs/arm-softmmu.mak
> +++ b/default-configs/arm-softmmu.mak
> @@ -41,6 +41,7 @@ CONFIG_USB=y
>  CONFIG_USB_MUSB=y
>  CONFIG_USB_EHCI_SYSBUS=y
>  CONFIG_PLATFORM_BUS=y
> +CONFIG_VIRTIO_MMIO=y
>  
>  CONFIG_ARM11MPCORE=y
>  CONFIG_A9MPCORE=y
> diff --git a/default-configs/hppa-softmmu.mak b/default-configs/hppa-softmmu.mak
> index 013e5f046f..4badc0521e 100644
> --- a/default-configs/hppa-softmmu.mak
> +++ b/default-configs/hppa-softmmu.mak
> @@ -4,8 +4,6 @@ CONFIG_SERIAL=y
>  CONFIG_SERIAL_ISA=y
>  CONFIG_ISA_BUS=y
>  CONFIG_I8259=y
> -CONFIG_VIRTIO_PCI=$(CONFIG_PCI)
> -CONFIG_VIRTIO=y
>  CONFIG_E1000_PCI=y
>  CONFIG_IDE_ISA=y
>  CONFIG_IDE_CMD646=y
> diff --git a/default-configs/pci.mak b/default-configs/pci.mak
> index 163dd814c7..de53d20ac6 100644
> --- a/default-configs/pci.mak
> +++ b/default-configs/pci.mak
> @@ -2,7 +2,7 @@ CONFIG_PCI=y
>  # For now, CONFIG_IDE_CORE requires ISA, so we enable it here
>  CONFIG_ISA_BUS=y
>  CONFIG_VIRTIO_PCI=y
> -CONFIG_VIRTIO=y
> +include virtio.mak
>  CONFIG_USB_UHCI=y
>  CONFIG_USB_OHCI=y
>  CONFIG_USB_EHCI=y
> @@ -46,5 +46,3 @@ CONFIG_VGA=y
>  CONFIG_VGA_PCI=y
>  CONFIG_IVSHMEM_DEVICE=$(CONFIG_IVSHMEM)
>  CONFIG_ROCKER=y
> -CONFIG_VHOST_USER_SCSI=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
> -CONFIG_VHOST_USER_BLK=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
> diff --git a/default-configs/riscv32-softmmu.mak b/default-configs/riscv32-softmmu.mak
> index 9159a4a8af..20e670d99c 100644
> --- a/default-configs/riscv32-softmmu.mak
> +++ b/default-configs/riscv32-softmmu.mak
> @@ -1,5 +1,5 @@
>  # Default configuration for riscv-softmmu
>  
>  CONFIG_SERIAL=y
> -CONFIG_VIRTIO=y
> -CONFIG_SCSI=y
> +CONFIG_VIRTIO_MMIO=y
> +include virtio.mak
> diff --git a/default-configs/riscv64-softmmu.mak b/default-configs/riscv64-softmmu.mak
> index 9159a4a8af..20e670d99c 100644
> --- a/default-configs/riscv64-softmmu.mak
> +++ b/default-configs/riscv64-softmmu.mak
> @@ -1,5 +1,5 @@
>  # Default configuration for riscv-softmmu
>  
>  CONFIG_SERIAL=y
> -CONFIG_VIRTIO=y
> -CONFIG_SCSI=y
> +CONFIG_VIRTIO_MMIO=y
> +include virtio.mak
> diff --git a/default-configs/s390x-softmmu.mak b/default-configs/s390x-softmmu.mak
> index 729033b25a..d6b67d50f0 100644
> --- a/default-configs/s390x-softmmu.mak
> +++ b/default-configs/s390x-softmmu.mak
> @@ -1,9 +1,6 @@
>  CONFIG_PCI=y
>  CONFIG_VIRTIO_PCI=$(CONFIG_PCI)
> -CONFIG_VHOST_USER_SCSI=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
> -CONFIG_VHOST_USER_BLK=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
> -CONFIG_SCSI=y
> -CONFIG_VIRTIO=y
> +include virtio.mak
>  CONFIG_SCLPCONSOLE=y
>  CONFIG_TERMINAL3270=y
>  CONFIG_S390_FLIC=y
> diff --git a/default-configs/virtio.mak b/default-configs/virtio.mak
> new file mode 100644
> index 0000000000..1304849018
> --- /dev/null
> +++ b/default-configs/virtio.mak
> @@ -0,0 +1,14 @@
> +CONFIG_VHOST_USER_SCSI=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
> +CONFIG_VHOST_USER_BLK=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
> +CONFIG_VIRTIO=y
> +CONFIG_VIRTIO_9P=y
> +CONFIG_VIRTIO_BALLOON=y
> +CONFIG_VIRTIO_BLK=y
> +CONFIG_VIRTIO_CRYPTO=y
> +CONFIG_VIRTIO_GPU=y
> +CONFIG_VIRTIO_INPUT=y
> +CONFIG_VIRTIO_NET=y
> +CONFIG_VIRTIO_RNG=y
> +CONFIG_SCSI=y
> +CONFIG_VIRTIO_SCSI=y
> +CONFIG_VIRTIO_SERIAL=y
> diff --git a/hw/9pfs/Makefile.objs b/hw/9pfs/Makefile.objs
> index fd90b62900..e3fa673665 100644
> --- a/hw/9pfs/Makefile.objs
> +++ b/hw/9pfs/Makefile.objs
> @@ -1,3 +1,4 @@
> +ifeq ($(call lor,$(CONFIG_VIRTIO_9P),$(CONFIG_XEN)),y)
>  common-obj-y  = 9p.o 9p-util.o
>  common-obj-y += 9p-local.o 9p-xattr.o
>  common-obj-y += 9p-xattr-user.o 9p-posix-acl.o
> @@ -5,6 +6,7 @@ common-obj-y += coth.o cofs.o codir.o cofile.o
>  common-obj-y += coxattr.o 9p-synth.o
>  common-obj-$(CONFIG_OPEN_BY_HANDLE) +=  9p-handle.o
>  common-obj-y += 9p-proxy.o
> -common-obj-$(CONFIG_XEN) += xen-9p-backend.o
> +endif
>  
> -obj-$(CONFIG_VIRTIO) += virtio-9p-device.o
> +common-obj-$(CONFIG_XEN) += xen-9p-backend.o
> +obj-$(CONFIG_VIRTIO_9P) += virtio-9p-device.o
> diff --git a/hw/block/Makefile.objs b/hw/block/Makefile.objs
> index 4c19a583c8..53ce5751ae 100644
> --- a/hw/block/Makefile.objs
> +++ b/hw/block/Makefile.objs
> @@ -11,8 +11,6 @@ common-obj-$(CONFIG_NVME_PCI) += nvme.o
>  
>  obj-$(CONFIG_SH4) += tc58128.o
>  
> -obj-$(CONFIG_VIRTIO) += virtio-blk.o
> -obj-$(CONFIG_VIRTIO) += dataplane/
> -ifeq ($(CONFIG_VIRTIO),y)
> +obj-$(CONFIG_VIRTIO_BLK) += virtio-blk.o
> +obj-$(CONFIG_VIRTIO_BLK) += dataplane/
>  obj-$(CONFIG_VHOST_USER_BLK) += vhost-user-blk.o
> -endif
> diff --git a/hw/char/Makefile.objs b/hw/char/Makefile.objs
> index 1b979100b7..b570531291 100644
> --- a/hw/char/Makefile.objs
> +++ b/hw/char/Makefile.objs
> @@ -6,7 +6,7 @@ common-obj-$(CONFIG_PL011) += pl011.o
>  common-obj-$(CONFIG_SERIAL) += serial.o
>  common-obj-$(CONFIG_SERIAL_ISA) += serial-isa.o
>  common-obj-$(CONFIG_SERIAL_PCI) += serial-pci.o
> -common-obj-$(CONFIG_VIRTIO) += virtio-console.o
> +common-obj-$(CONFIG_VIRTIO_SERIAL) += virtio-console.o
>  common-obj-$(CONFIG_XILINX) += xilinx_uartlite.o
>  common-obj-$(CONFIG_XEN) += xen_console.o
>  common-obj-$(CONFIG_CADENCE) += cadence_uart.o
> diff --git a/hw/display/Makefile.objs b/hw/display/Makefile.objs
> index d907b381ae..b5d97ab26d 100644
> --- a/hw/display/Makefile.objs
> +++ b/hw/display/Makefile.objs
> @@ -36,8 +36,8 @@ obj-$(CONFIG_VGA) += vga.o
>  
>  common-obj-$(CONFIG_QXL) += qxl.o qxl-logger.o qxl-render.o
>  
> -obj-$(CONFIG_VIRTIO) += virtio-gpu.o virtio-gpu-3d.o
> -obj-$(CONFIG_VIRTIO_PCI) += virtio-gpu-pci.o
> +obj-$(CONFIG_VIRTIO_GPU) += virtio-gpu.o virtio-gpu-3d.o
> +obj-$(call land,$(CONFIG_VIRTIO_GPU),$(CONFIG_VIRTIO_PCI)) += virtio-gpu-pci.o
>  obj-$(CONFIG_VIRTIO_VGA) += virtio-vga.o
>  virtio-gpu.o-cflags := $(VIRGL_CFLAGS)
>  virtio-gpu.o-libs += $(VIRGL_LIBS)
> diff --git a/hw/input/Makefile.objs b/hw/input/Makefile.objs
> index 77e53e6883..c8b00f71ec 100644
> --- a/hw/input/Makefile.objs
> +++ b/hw/input/Makefile.objs
> @@ -7,10 +7,10 @@ common-obj-y += ps2.o
>  common-obj-$(CONFIG_STELLARIS_INPUT) += stellaris_input.o
>  common-obj-$(CONFIG_TSC2005) += tsc2005.o
>  
> -common-obj-$(CONFIG_VIRTIO) += virtio-input.o
> -common-obj-$(CONFIG_VIRTIO) += virtio-input-hid.o
> +common-obj-$(CONFIG_VIRTIO_INPUT) += virtio-input.o
> +common-obj-$(CONFIG_VIRTIO_INPUT) += virtio-input-hid.o
>  ifeq ($(CONFIG_LINUX),y)
> -common-obj-$(CONFIG_VIRTIO) += virtio-input-host.o
> +common-obj-$(CONFIG_VIRTIO_INPUT) += virtio-input-host.o
>  endif
>  
>  obj-$(CONFIG_MILKYMIST) += milkymist-softusb.o
> diff --git a/hw/net/Makefile.objs b/hw/net/Makefile.objs
> index ab22968641..fa461d4463 100644
> --- a/hw/net/Makefile.objs
> +++ b/hw/net/Makefile.objs
> @@ -36,7 +36,7 @@ obj-$(CONFIG_MILKYMIST) += milkymist-minimac2.o
>  obj-$(CONFIG_PSERIES) += spapr_llan.o
>  obj-$(CONFIG_XILINX_ETHLITE) += xilinx_ethlite.o
>  
> -obj-$(CONFIG_VIRTIO) += virtio-net.o
> +obj-$(CONFIG_VIRTIO_NET) += virtio-net.o
>  obj-y += vhost_net.o
>  
>  obj-$(CONFIG_ETSEC) += fsl_etsec/etsec.o fsl_etsec/registers.o \
> diff --git a/hw/scsi/Makefile.objs b/hw/scsi/Makefile.objs
> index b188f7242b..718b4c2a68 100644
> --- a/hw/scsi/Makefile.objs
> +++ b/hw/scsi/Makefile.objs
> @@ -8,7 +8,7 @@ common-obj-$(CONFIG_ESP) += esp.o
>  common-obj-$(CONFIG_ESP_PCI) += esp-pci.o
>  obj-$(CONFIG_PSERIES) += spapr_vscsi.o
>  
> -ifeq ($(CONFIG_VIRTIO),y)
> +ifeq ($(CONFIG_VIRTIO_SCSI),y)
>  obj-y += virtio-scsi.o virtio-scsi-dataplane.o
>  obj-$(CONFIG_VHOST_SCSI) += vhost-scsi-common.o vhost-scsi.o
>  obj-$(CONFIG_VHOST_USER_SCSI) += vhost-scsi-common.o vhost-user-scsi.o
> diff --git a/hw/virtio/Makefile.objs b/hw/virtio/Makefile.objs
> index 765d363c1f..1b2799cfd8 100644
> --- a/hw/virtio/Makefile.objs
> +++ b/hw/virtio/Makefile.objs
> @@ -1,15 +1,17 @@
>  ifeq ($(CONFIG_VIRTIO),y)
> -common-obj-y += virtio-rng.o
> -common-obj-$(CONFIG_VIRTIO_PCI) += virtio-pci.o
>  common-obj-y += virtio-bus.o
> -common-obj-y += virtio-mmio.o
> +obj-y += virtio.o
> +
> +common-obj-$(CONFIG_VIRTIO_RNG) += virtio-rng.o
> +common-obj-$(CONFIG_VIRTIO_PCI) += virtio-pci.o
> +common-obj-$(CONFIG_VIRTIO_MMIO) += virtio-mmio.o
> +obj-$(CONFIG_VIRTIO_BALLOON) += virtio-balloon.o
> +obj-$(CONFIG_VIRTIO_CRYPTO) += virtio-crypto.o
> +obj-$(call land,$(CONFIG_VIRTIO_CRYPTO),$(CONFIG_VIRTIO_PCI)) += virtio-crypto-pci.o
>  
> -obj-y += virtio.o virtio-balloon.o 
>  obj-$(CONFIG_LINUX) += vhost.o vhost-backend.o vhost-user.o
>  obj-$(CONFIG_VHOST_VSOCK) += vhost-vsock.o
> -obj-y += virtio-crypto.o
> -obj-$(CONFIG_VIRTIO_PCI) += virtio-crypto-pci.o
>  endif
>  
> -common-obj-$(call lnot,$(CONFIG_LINUX)) += vhost-stub.o
> +common-obj-$(call lnot,$(call land,$(CONFIG_VIRTIO),$(CONFIG_LINUX))) += vhost-stub.o
>  common-obj-$(CONFIG_ALL) += vhost-stub.o
> 

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

* Re: [Qemu-devel] [PULL 56/56] hw: make virtio devices configurable via default-configs/
  2018-06-01 17:26   ` Philippe Mathieu-Daudé
@ 2018-06-01 17:31     ` Paolo Bonzini
  2018-06-01 17:36       ` Philippe Mathieu-Daudé
  0 siblings, 1 reply; 10+ messages in thread
From: Paolo Bonzini @ 2018-06-01 17:31 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé; +Cc: qemu-devel, Fam Zheng

On 01/06/2018 19:26, Philippe Mathieu-Daudé wrote:
> On 06/01/2018 02:15 PM, Paolo Bonzini wrote:
>> This is only half of the work, because the proxy devices (virtio-*-pci,
>> virtio-*-ccw, etc.) are still included unconditionally.  It is still a
>> move in the right direction.
>>
>> Based-on: <20180522194943.24871-1-pbonzini@redhat.com>
> 
> Is this tag useful?

Yeah, usually it would go in the cover letter.  It remained here because
this patch was not part of a series.

Paolo

>> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
>> ---
>>  default-configs/arm-softmmu.mak     |  1 +
>>  default-configs/hppa-softmmu.mak    |  2 --
>>  default-configs/pci.mak             |  4 +---
>>  default-configs/riscv32-softmmu.mak |  4 ++--
>>  default-configs/riscv64-softmmu.mak |  4 ++--
>>  default-configs/s390x-softmmu.mak   |  5 +----
>>  default-configs/virtio.mak          | 14 ++++++++++++++
>>  hw/9pfs/Makefile.objs               |  6 ++++--
>>  hw/block/Makefile.objs              |  6 ++----
>>  hw/char/Makefile.objs               |  2 +-
>>  hw/display/Makefile.objs            |  4 ++--
>>  hw/input/Makefile.objs              |  6 +++---
>>  hw/net/Makefile.objs                |  2 +-
>>  hw/scsi/Makefile.objs               |  2 +-
>>  hw/virtio/Makefile.objs             | 16 +++++++++-------
>>  15 files changed, 44 insertions(+), 34 deletions(-)
>>  create mode 100644 default-configs/virtio.mak
>>
>> diff --git a/default-configs/arm-softmmu.mak b/default-configs/arm-softmmu.mak
>> index dd29e741c2..8ba2558b36 100644
>> --- a/default-configs/arm-softmmu.mak
>> +++ b/default-configs/arm-softmmu.mak
>> @@ -41,6 +41,7 @@ CONFIG_USB=y
>>  CONFIG_USB_MUSB=y
>>  CONFIG_USB_EHCI_SYSBUS=y
>>  CONFIG_PLATFORM_BUS=y
>> +CONFIG_VIRTIO_MMIO=y
>>  
>>  CONFIG_ARM11MPCORE=y
>>  CONFIG_A9MPCORE=y
>> diff --git a/default-configs/hppa-softmmu.mak b/default-configs/hppa-softmmu.mak
>> index 013e5f046f..4badc0521e 100644
>> --- a/default-configs/hppa-softmmu.mak
>> +++ b/default-configs/hppa-softmmu.mak
>> @@ -4,8 +4,6 @@ CONFIG_SERIAL=y
>>  CONFIG_SERIAL_ISA=y
>>  CONFIG_ISA_BUS=y
>>  CONFIG_I8259=y
>> -CONFIG_VIRTIO_PCI=$(CONFIG_PCI)
>> -CONFIG_VIRTIO=y
>>  CONFIG_E1000_PCI=y
>>  CONFIG_IDE_ISA=y
>>  CONFIG_IDE_CMD646=y
>> diff --git a/default-configs/pci.mak b/default-configs/pci.mak
>> index 163dd814c7..de53d20ac6 100644
>> --- a/default-configs/pci.mak
>> +++ b/default-configs/pci.mak
>> @@ -2,7 +2,7 @@ CONFIG_PCI=y
>>  # For now, CONFIG_IDE_CORE requires ISA, so we enable it here
>>  CONFIG_ISA_BUS=y
>>  CONFIG_VIRTIO_PCI=y
>> -CONFIG_VIRTIO=y
>> +include virtio.mak
>>  CONFIG_USB_UHCI=y
>>  CONFIG_USB_OHCI=y
>>  CONFIG_USB_EHCI=y
>> @@ -46,5 +46,3 @@ CONFIG_VGA=y
>>  CONFIG_VGA_PCI=y
>>  CONFIG_IVSHMEM_DEVICE=$(CONFIG_IVSHMEM)
>>  CONFIG_ROCKER=y
>> -CONFIG_VHOST_USER_SCSI=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
>> -CONFIG_VHOST_USER_BLK=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
>> diff --git a/default-configs/riscv32-softmmu.mak b/default-configs/riscv32-softmmu.mak
>> index 9159a4a8af..20e670d99c 100644
>> --- a/default-configs/riscv32-softmmu.mak
>> +++ b/default-configs/riscv32-softmmu.mak
>> @@ -1,5 +1,5 @@
>>  # Default configuration for riscv-softmmu
>>  
>>  CONFIG_SERIAL=y
>> -CONFIG_VIRTIO=y
>> -CONFIG_SCSI=y
>> +CONFIG_VIRTIO_MMIO=y
>> +include virtio.mak
>> diff --git a/default-configs/riscv64-softmmu.mak b/default-configs/riscv64-softmmu.mak
>> index 9159a4a8af..20e670d99c 100644
>> --- a/default-configs/riscv64-softmmu.mak
>> +++ b/default-configs/riscv64-softmmu.mak
>> @@ -1,5 +1,5 @@
>>  # Default configuration for riscv-softmmu
>>  
>>  CONFIG_SERIAL=y
>> -CONFIG_VIRTIO=y
>> -CONFIG_SCSI=y
>> +CONFIG_VIRTIO_MMIO=y
>> +include virtio.mak
>> diff --git a/default-configs/s390x-softmmu.mak b/default-configs/s390x-softmmu.mak
>> index 729033b25a..d6b67d50f0 100644
>> --- a/default-configs/s390x-softmmu.mak
>> +++ b/default-configs/s390x-softmmu.mak
>> @@ -1,9 +1,6 @@
>>  CONFIG_PCI=y
>>  CONFIG_VIRTIO_PCI=$(CONFIG_PCI)
>> -CONFIG_VHOST_USER_SCSI=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
>> -CONFIG_VHOST_USER_BLK=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
>> -CONFIG_SCSI=y
>> -CONFIG_VIRTIO=y
>> +include virtio.mak
>>  CONFIG_SCLPCONSOLE=y
>>  CONFIG_TERMINAL3270=y
>>  CONFIG_S390_FLIC=y
>> diff --git a/default-configs/virtio.mak b/default-configs/virtio.mak
>> new file mode 100644
>> index 0000000000..1304849018
>> --- /dev/null
>> +++ b/default-configs/virtio.mak
>> @@ -0,0 +1,14 @@
>> +CONFIG_VHOST_USER_SCSI=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
>> +CONFIG_VHOST_USER_BLK=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
>> +CONFIG_VIRTIO=y
>> +CONFIG_VIRTIO_9P=y
>> +CONFIG_VIRTIO_BALLOON=y
>> +CONFIG_VIRTIO_BLK=y
>> +CONFIG_VIRTIO_CRYPTO=y
>> +CONFIG_VIRTIO_GPU=y
>> +CONFIG_VIRTIO_INPUT=y
>> +CONFIG_VIRTIO_NET=y
>> +CONFIG_VIRTIO_RNG=y
>> +CONFIG_SCSI=y
>> +CONFIG_VIRTIO_SCSI=y
>> +CONFIG_VIRTIO_SERIAL=y
>> diff --git a/hw/9pfs/Makefile.objs b/hw/9pfs/Makefile.objs
>> index fd90b62900..e3fa673665 100644
>> --- a/hw/9pfs/Makefile.objs
>> +++ b/hw/9pfs/Makefile.objs
>> @@ -1,3 +1,4 @@
>> +ifeq ($(call lor,$(CONFIG_VIRTIO_9P),$(CONFIG_XEN)),y)
>>  common-obj-y  = 9p.o 9p-util.o
>>  common-obj-y += 9p-local.o 9p-xattr.o
>>  common-obj-y += 9p-xattr-user.o 9p-posix-acl.o
>> @@ -5,6 +6,7 @@ common-obj-y += coth.o cofs.o codir.o cofile.o
>>  common-obj-y += coxattr.o 9p-synth.o
>>  common-obj-$(CONFIG_OPEN_BY_HANDLE) +=  9p-handle.o
>>  common-obj-y += 9p-proxy.o
>> -common-obj-$(CONFIG_XEN) += xen-9p-backend.o
>> +endif
>>  
>> -obj-$(CONFIG_VIRTIO) += virtio-9p-device.o
>> +common-obj-$(CONFIG_XEN) += xen-9p-backend.o
>> +obj-$(CONFIG_VIRTIO_9P) += virtio-9p-device.o
>> diff --git a/hw/block/Makefile.objs b/hw/block/Makefile.objs
>> index 4c19a583c8..53ce5751ae 100644
>> --- a/hw/block/Makefile.objs
>> +++ b/hw/block/Makefile.objs
>> @@ -11,8 +11,6 @@ common-obj-$(CONFIG_NVME_PCI) += nvme.o
>>  
>>  obj-$(CONFIG_SH4) += tc58128.o
>>  
>> -obj-$(CONFIG_VIRTIO) += virtio-blk.o
>> -obj-$(CONFIG_VIRTIO) += dataplane/
>> -ifeq ($(CONFIG_VIRTIO),y)
>> +obj-$(CONFIG_VIRTIO_BLK) += virtio-blk.o
>> +obj-$(CONFIG_VIRTIO_BLK) += dataplane/
>>  obj-$(CONFIG_VHOST_USER_BLK) += vhost-user-blk.o
>> -endif
>> diff --git a/hw/char/Makefile.objs b/hw/char/Makefile.objs
>> index 1b979100b7..b570531291 100644
>> --- a/hw/char/Makefile.objs
>> +++ b/hw/char/Makefile.objs
>> @@ -6,7 +6,7 @@ common-obj-$(CONFIG_PL011) += pl011.o
>>  common-obj-$(CONFIG_SERIAL) += serial.o
>>  common-obj-$(CONFIG_SERIAL_ISA) += serial-isa.o
>>  common-obj-$(CONFIG_SERIAL_PCI) += serial-pci.o
>> -common-obj-$(CONFIG_VIRTIO) += virtio-console.o
>> +common-obj-$(CONFIG_VIRTIO_SERIAL) += virtio-console.o
>>  common-obj-$(CONFIG_XILINX) += xilinx_uartlite.o
>>  common-obj-$(CONFIG_XEN) += xen_console.o
>>  common-obj-$(CONFIG_CADENCE) += cadence_uart.o
>> diff --git a/hw/display/Makefile.objs b/hw/display/Makefile.objs
>> index d907b381ae..b5d97ab26d 100644
>> --- a/hw/display/Makefile.objs
>> +++ b/hw/display/Makefile.objs
>> @@ -36,8 +36,8 @@ obj-$(CONFIG_VGA) += vga.o
>>  
>>  common-obj-$(CONFIG_QXL) += qxl.o qxl-logger.o qxl-render.o
>>  
>> -obj-$(CONFIG_VIRTIO) += virtio-gpu.o virtio-gpu-3d.o
>> -obj-$(CONFIG_VIRTIO_PCI) += virtio-gpu-pci.o
>> +obj-$(CONFIG_VIRTIO_GPU) += virtio-gpu.o virtio-gpu-3d.o
>> +obj-$(call land,$(CONFIG_VIRTIO_GPU),$(CONFIG_VIRTIO_PCI)) += virtio-gpu-pci.o
>>  obj-$(CONFIG_VIRTIO_VGA) += virtio-vga.o
>>  virtio-gpu.o-cflags := $(VIRGL_CFLAGS)
>>  virtio-gpu.o-libs += $(VIRGL_LIBS)
>> diff --git a/hw/input/Makefile.objs b/hw/input/Makefile.objs
>> index 77e53e6883..c8b00f71ec 100644
>> --- a/hw/input/Makefile.objs
>> +++ b/hw/input/Makefile.objs
>> @@ -7,10 +7,10 @@ common-obj-y += ps2.o
>>  common-obj-$(CONFIG_STELLARIS_INPUT) += stellaris_input.o
>>  common-obj-$(CONFIG_TSC2005) += tsc2005.o
>>  
>> -common-obj-$(CONFIG_VIRTIO) += virtio-input.o
>> -common-obj-$(CONFIG_VIRTIO) += virtio-input-hid.o
>> +common-obj-$(CONFIG_VIRTIO_INPUT) += virtio-input.o
>> +common-obj-$(CONFIG_VIRTIO_INPUT) += virtio-input-hid.o
>>  ifeq ($(CONFIG_LINUX),y)
>> -common-obj-$(CONFIG_VIRTIO) += virtio-input-host.o
>> +common-obj-$(CONFIG_VIRTIO_INPUT) += virtio-input-host.o
>>  endif
>>  
>>  obj-$(CONFIG_MILKYMIST) += milkymist-softusb.o
>> diff --git a/hw/net/Makefile.objs b/hw/net/Makefile.objs
>> index ab22968641..fa461d4463 100644
>> --- a/hw/net/Makefile.objs
>> +++ b/hw/net/Makefile.objs
>> @@ -36,7 +36,7 @@ obj-$(CONFIG_MILKYMIST) += milkymist-minimac2.o
>>  obj-$(CONFIG_PSERIES) += spapr_llan.o
>>  obj-$(CONFIG_XILINX_ETHLITE) += xilinx_ethlite.o
>>  
>> -obj-$(CONFIG_VIRTIO) += virtio-net.o
>> +obj-$(CONFIG_VIRTIO_NET) += virtio-net.o
>>  obj-y += vhost_net.o
>>  
>>  obj-$(CONFIG_ETSEC) += fsl_etsec/etsec.o fsl_etsec/registers.o \
>> diff --git a/hw/scsi/Makefile.objs b/hw/scsi/Makefile.objs
>> index b188f7242b..718b4c2a68 100644
>> --- a/hw/scsi/Makefile.objs
>> +++ b/hw/scsi/Makefile.objs
>> @@ -8,7 +8,7 @@ common-obj-$(CONFIG_ESP) += esp.o
>>  common-obj-$(CONFIG_ESP_PCI) += esp-pci.o
>>  obj-$(CONFIG_PSERIES) += spapr_vscsi.o
>>  
>> -ifeq ($(CONFIG_VIRTIO),y)
>> +ifeq ($(CONFIG_VIRTIO_SCSI),y)
>>  obj-y += virtio-scsi.o virtio-scsi-dataplane.o
>>  obj-$(CONFIG_VHOST_SCSI) += vhost-scsi-common.o vhost-scsi.o
>>  obj-$(CONFIG_VHOST_USER_SCSI) += vhost-scsi-common.o vhost-user-scsi.o
>> diff --git a/hw/virtio/Makefile.objs b/hw/virtio/Makefile.objs
>> index 765d363c1f..1b2799cfd8 100644
>> --- a/hw/virtio/Makefile.objs
>> +++ b/hw/virtio/Makefile.objs
>> @@ -1,15 +1,17 @@
>>  ifeq ($(CONFIG_VIRTIO),y)
>> -common-obj-y += virtio-rng.o
>> -common-obj-$(CONFIG_VIRTIO_PCI) += virtio-pci.o
>>  common-obj-y += virtio-bus.o
>> -common-obj-y += virtio-mmio.o
>> +obj-y += virtio.o
>> +
>> +common-obj-$(CONFIG_VIRTIO_RNG) += virtio-rng.o
>> +common-obj-$(CONFIG_VIRTIO_PCI) += virtio-pci.o
>> +common-obj-$(CONFIG_VIRTIO_MMIO) += virtio-mmio.o
>> +obj-$(CONFIG_VIRTIO_BALLOON) += virtio-balloon.o
>> +obj-$(CONFIG_VIRTIO_CRYPTO) += virtio-crypto.o
>> +obj-$(call land,$(CONFIG_VIRTIO_CRYPTO),$(CONFIG_VIRTIO_PCI)) += virtio-crypto-pci.o
>>  
>> -obj-y += virtio.o virtio-balloon.o 
>>  obj-$(CONFIG_LINUX) += vhost.o vhost-backend.o vhost-user.o
>>  obj-$(CONFIG_VHOST_VSOCK) += vhost-vsock.o
>> -obj-y += virtio-crypto.o
>> -obj-$(CONFIG_VIRTIO_PCI) += virtio-crypto-pci.o
>>  endif
>>  
>> -common-obj-$(call lnot,$(CONFIG_LINUX)) += vhost-stub.o
>> +common-obj-$(call lnot,$(call land,$(CONFIG_VIRTIO),$(CONFIG_LINUX))) += vhost-stub.o
>>  common-obj-$(CONFIG_ALL) += vhost-stub.o
>>

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

* Re: [Qemu-devel] [PULL 56/56] hw: make virtio devices configurable via default-configs/
  2018-06-01 17:31     ` Paolo Bonzini
@ 2018-06-01 17:36       ` Philippe Mathieu-Daudé
  2018-06-01 17:57         ` Eric Blake
  0 siblings, 1 reply; 10+ messages in thread
From: Philippe Mathieu-Daudé @ 2018-06-01 17:36 UTC (permalink / raw)
  To: Paolo Bonzini; +Cc: Fam Zheng, qemu-devel

On 06/01/2018 02:31 PM, Paolo Bonzini wrote:
> On 01/06/2018 19:26, Philippe Mathieu-Daudé wrote:
>> On 06/01/2018 02:15 PM, Paolo Bonzini wrote:
>>> This is only half of the work, because the proxy devices (virtio-*-pci,
>>> virtio-*-ccw, etc.) are still included unconditionally.  It is still a
>>> move in the right direction.
>>>
>>> Based-on: <20180522194943.24871-1-pbonzini@redhat.com>
>>
>> Is this tag useful?
> 
> Yeah, usually it would go in the cover letter.  It remained here because
> this patch was not part of a series.

Sorry I meant "is this useful [in the git history, since this is a pull
request]".

> 
> Paolo
> 
>>> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
>>> ---
>>>  default-configs/arm-softmmu.mak     |  1 +
>>>  default-configs/hppa-softmmu.mak    |  2 --
>>>  default-configs/pci.mak             |  4 +---
>>>  default-configs/riscv32-softmmu.mak |  4 ++--
>>>  default-configs/riscv64-softmmu.mak |  4 ++--
>>>  default-configs/s390x-softmmu.mak   |  5 +----
>>>  default-configs/virtio.mak          | 14 ++++++++++++++
>>>  hw/9pfs/Makefile.objs               |  6 ++++--
>>>  hw/block/Makefile.objs              |  6 ++----
>>>  hw/char/Makefile.objs               |  2 +-
>>>  hw/display/Makefile.objs            |  4 ++--
>>>  hw/input/Makefile.objs              |  6 +++---
>>>  hw/net/Makefile.objs                |  2 +-
>>>  hw/scsi/Makefile.objs               |  2 +-
>>>  hw/virtio/Makefile.objs             | 16 +++++++++-------
>>>  15 files changed, 44 insertions(+), 34 deletions(-)
>>>  create mode 100644 default-configs/virtio.mak
>>>
>>> diff --git a/default-configs/arm-softmmu.mak b/default-configs/arm-softmmu.mak
>>> index dd29e741c2..8ba2558b36 100644
>>> --- a/default-configs/arm-softmmu.mak
>>> +++ b/default-configs/arm-softmmu.mak
>>> @@ -41,6 +41,7 @@ CONFIG_USB=y
>>>  CONFIG_USB_MUSB=y
>>>  CONFIG_USB_EHCI_SYSBUS=y
>>>  CONFIG_PLATFORM_BUS=y
>>> +CONFIG_VIRTIO_MMIO=y
>>>  
>>>  CONFIG_ARM11MPCORE=y
>>>  CONFIG_A9MPCORE=y
>>> diff --git a/default-configs/hppa-softmmu.mak b/default-configs/hppa-softmmu.mak
>>> index 013e5f046f..4badc0521e 100644
>>> --- a/default-configs/hppa-softmmu.mak
>>> +++ b/default-configs/hppa-softmmu.mak
>>> @@ -4,8 +4,6 @@ CONFIG_SERIAL=y
>>>  CONFIG_SERIAL_ISA=y
>>>  CONFIG_ISA_BUS=y
>>>  CONFIG_I8259=y
>>> -CONFIG_VIRTIO_PCI=$(CONFIG_PCI)
>>> -CONFIG_VIRTIO=y
>>>  CONFIG_E1000_PCI=y
>>>  CONFIG_IDE_ISA=y
>>>  CONFIG_IDE_CMD646=y
>>> diff --git a/default-configs/pci.mak b/default-configs/pci.mak
>>> index 163dd814c7..de53d20ac6 100644
>>> --- a/default-configs/pci.mak
>>> +++ b/default-configs/pci.mak
>>> @@ -2,7 +2,7 @@ CONFIG_PCI=y
>>>  # For now, CONFIG_IDE_CORE requires ISA, so we enable it here
>>>  CONFIG_ISA_BUS=y
>>>  CONFIG_VIRTIO_PCI=y
>>> -CONFIG_VIRTIO=y
>>> +include virtio.mak
>>>  CONFIG_USB_UHCI=y
>>>  CONFIG_USB_OHCI=y
>>>  CONFIG_USB_EHCI=y
>>> @@ -46,5 +46,3 @@ CONFIG_VGA=y
>>>  CONFIG_VGA_PCI=y
>>>  CONFIG_IVSHMEM_DEVICE=$(CONFIG_IVSHMEM)
>>>  CONFIG_ROCKER=y
>>> -CONFIG_VHOST_USER_SCSI=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
>>> -CONFIG_VHOST_USER_BLK=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
>>> diff --git a/default-configs/riscv32-softmmu.mak b/default-configs/riscv32-softmmu.mak
>>> index 9159a4a8af..20e670d99c 100644
>>> --- a/default-configs/riscv32-softmmu.mak
>>> +++ b/default-configs/riscv32-softmmu.mak
>>> @@ -1,5 +1,5 @@
>>>  # Default configuration for riscv-softmmu
>>>  
>>>  CONFIG_SERIAL=y
>>> -CONFIG_VIRTIO=y
>>> -CONFIG_SCSI=y
>>> +CONFIG_VIRTIO_MMIO=y
>>> +include virtio.mak
>>> diff --git a/default-configs/riscv64-softmmu.mak b/default-configs/riscv64-softmmu.mak
>>> index 9159a4a8af..20e670d99c 100644
>>> --- a/default-configs/riscv64-softmmu.mak
>>> +++ b/default-configs/riscv64-softmmu.mak
>>> @@ -1,5 +1,5 @@
>>>  # Default configuration for riscv-softmmu
>>>  
>>>  CONFIG_SERIAL=y
>>> -CONFIG_VIRTIO=y
>>> -CONFIG_SCSI=y
>>> +CONFIG_VIRTIO_MMIO=y
>>> +include virtio.mak
>>> diff --git a/default-configs/s390x-softmmu.mak b/default-configs/s390x-softmmu.mak
>>> index 729033b25a..d6b67d50f0 100644
>>> --- a/default-configs/s390x-softmmu.mak
>>> +++ b/default-configs/s390x-softmmu.mak
>>> @@ -1,9 +1,6 @@
>>>  CONFIG_PCI=y
>>>  CONFIG_VIRTIO_PCI=$(CONFIG_PCI)
>>> -CONFIG_VHOST_USER_SCSI=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
>>> -CONFIG_VHOST_USER_BLK=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
>>> -CONFIG_SCSI=y
>>> -CONFIG_VIRTIO=y
>>> +include virtio.mak
>>>  CONFIG_SCLPCONSOLE=y
>>>  CONFIG_TERMINAL3270=y
>>>  CONFIG_S390_FLIC=y
>>> diff --git a/default-configs/virtio.mak b/default-configs/virtio.mak
>>> new file mode 100644
>>> index 0000000000..1304849018
>>> --- /dev/null
>>> +++ b/default-configs/virtio.mak
>>> @@ -0,0 +1,14 @@
>>> +CONFIG_VHOST_USER_SCSI=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
>>> +CONFIG_VHOST_USER_BLK=$(call land,$(CONFIG_VHOST_USER),$(CONFIG_LINUX))
>>> +CONFIG_VIRTIO=y
>>> +CONFIG_VIRTIO_9P=y
>>> +CONFIG_VIRTIO_BALLOON=y
>>> +CONFIG_VIRTIO_BLK=y
>>> +CONFIG_VIRTIO_CRYPTO=y
>>> +CONFIG_VIRTIO_GPU=y
>>> +CONFIG_VIRTIO_INPUT=y
>>> +CONFIG_VIRTIO_NET=y
>>> +CONFIG_VIRTIO_RNG=y
>>> +CONFIG_SCSI=y
>>> +CONFIG_VIRTIO_SCSI=y
>>> +CONFIG_VIRTIO_SERIAL=y
>>> diff --git a/hw/9pfs/Makefile.objs b/hw/9pfs/Makefile.objs
>>> index fd90b62900..e3fa673665 100644
>>> --- a/hw/9pfs/Makefile.objs
>>> +++ b/hw/9pfs/Makefile.objs
>>> @@ -1,3 +1,4 @@
>>> +ifeq ($(call lor,$(CONFIG_VIRTIO_9P),$(CONFIG_XEN)),y)
>>>  common-obj-y  = 9p.o 9p-util.o
>>>  common-obj-y += 9p-local.o 9p-xattr.o
>>>  common-obj-y += 9p-xattr-user.o 9p-posix-acl.o
>>> @@ -5,6 +6,7 @@ common-obj-y += coth.o cofs.o codir.o cofile.o
>>>  common-obj-y += coxattr.o 9p-synth.o
>>>  common-obj-$(CONFIG_OPEN_BY_HANDLE) +=  9p-handle.o
>>>  common-obj-y += 9p-proxy.o
>>> -common-obj-$(CONFIG_XEN) += xen-9p-backend.o
>>> +endif
>>>  
>>> -obj-$(CONFIG_VIRTIO) += virtio-9p-device.o
>>> +common-obj-$(CONFIG_XEN) += xen-9p-backend.o
>>> +obj-$(CONFIG_VIRTIO_9P) += virtio-9p-device.o
>>> diff --git a/hw/block/Makefile.objs b/hw/block/Makefile.objs
>>> index 4c19a583c8..53ce5751ae 100644
>>> --- a/hw/block/Makefile.objs
>>> +++ b/hw/block/Makefile.objs
>>> @@ -11,8 +11,6 @@ common-obj-$(CONFIG_NVME_PCI) += nvme.o
>>>  
>>>  obj-$(CONFIG_SH4) += tc58128.o
>>>  
>>> -obj-$(CONFIG_VIRTIO) += virtio-blk.o
>>> -obj-$(CONFIG_VIRTIO) += dataplane/
>>> -ifeq ($(CONFIG_VIRTIO),y)
>>> +obj-$(CONFIG_VIRTIO_BLK) += virtio-blk.o
>>> +obj-$(CONFIG_VIRTIO_BLK) += dataplane/
>>>  obj-$(CONFIG_VHOST_USER_BLK) += vhost-user-blk.o
>>> -endif
>>> diff --git a/hw/char/Makefile.objs b/hw/char/Makefile.objs
>>> index 1b979100b7..b570531291 100644
>>> --- a/hw/char/Makefile.objs
>>> +++ b/hw/char/Makefile.objs
>>> @@ -6,7 +6,7 @@ common-obj-$(CONFIG_PL011) += pl011.o
>>>  common-obj-$(CONFIG_SERIAL) += serial.o
>>>  common-obj-$(CONFIG_SERIAL_ISA) += serial-isa.o
>>>  common-obj-$(CONFIG_SERIAL_PCI) += serial-pci.o
>>> -common-obj-$(CONFIG_VIRTIO) += virtio-console.o
>>> +common-obj-$(CONFIG_VIRTIO_SERIAL) += virtio-console.o
>>>  common-obj-$(CONFIG_XILINX) += xilinx_uartlite.o
>>>  common-obj-$(CONFIG_XEN) += xen_console.o
>>>  common-obj-$(CONFIG_CADENCE) += cadence_uart.o
>>> diff --git a/hw/display/Makefile.objs b/hw/display/Makefile.objs
>>> index d907b381ae..b5d97ab26d 100644
>>> --- a/hw/display/Makefile.objs
>>> +++ b/hw/display/Makefile.objs
>>> @@ -36,8 +36,8 @@ obj-$(CONFIG_VGA) += vga.o
>>>  
>>>  common-obj-$(CONFIG_QXL) += qxl.o qxl-logger.o qxl-render.o
>>>  
>>> -obj-$(CONFIG_VIRTIO) += virtio-gpu.o virtio-gpu-3d.o
>>> -obj-$(CONFIG_VIRTIO_PCI) += virtio-gpu-pci.o
>>> +obj-$(CONFIG_VIRTIO_GPU) += virtio-gpu.o virtio-gpu-3d.o
>>> +obj-$(call land,$(CONFIG_VIRTIO_GPU),$(CONFIG_VIRTIO_PCI)) += virtio-gpu-pci.o
>>>  obj-$(CONFIG_VIRTIO_VGA) += virtio-vga.o
>>>  virtio-gpu.o-cflags := $(VIRGL_CFLAGS)
>>>  virtio-gpu.o-libs += $(VIRGL_LIBS)
>>> diff --git a/hw/input/Makefile.objs b/hw/input/Makefile.objs
>>> index 77e53e6883..c8b00f71ec 100644
>>> --- a/hw/input/Makefile.objs
>>> +++ b/hw/input/Makefile.objs
>>> @@ -7,10 +7,10 @@ common-obj-y += ps2.o
>>>  common-obj-$(CONFIG_STELLARIS_INPUT) += stellaris_input.o
>>>  common-obj-$(CONFIG_TSC2005) += tsc2005.o
>>>  
>>> -common-obj-$(CONFIG_VIRTIO) += virtio-input.o
>>> -common-obj-$(CONFIG_VIRTIO) += virtio-input-hid.o
>>> +common-obj-$(CONFIG_VIRTIO_INPUT) += virtio-input.o
>>> +common-obj-$(CONFIG_VIRTIO_INPUT) += virtio-input-hid.o
>>>  ifeq ($(CONFIG_LINUX),y)
>>> -common-obj-$(CONFIG_VIRTIO) += virtio-input-host.o
>>> +common-obj-$(CONFIG_VIRTIO_INPUT) += virtio-input-host.o
>>>  endif
>>>  
>>>  obj-$(CONFIG_MILKYMIST) += milkymist-softusb.o
>>> diff --git a/hw/net/Makefile.objs b/hw/net/Makefile.objs
>>> index ab22968641..fa461d4463 100644
>>> --- a/hw/net/Makefile.objs
>>> +++ b/hw/net/Makefile.objs
>>> @@ -36,7 +36,7 @@ obj-$(CONFIG_MILKYMIST) += milkymist-minimac2.o
>>>  obj-$(CONFIG_PSERIES) += spapr_llan.o
>>>  obj-$(CONFIG_XILINX_ETHLITE) += xilinx_ethlite.o
>>>  
>>> -obj-$(CONFIG_VIRTIO) += virtio-net.o
>>> +obj-$(CONFIG_VIRTIO_NET) += virtio-net.o
>>>  obj-y += vhost_net.o
>>>  
>>>  obj-$(CONFIG_ETSEC) += fsl_etsec/etsec.o fsl_etsec/registers.o \
>>> diff --git a/hw/scsi/Makefile.objs b/hw/scsi/Makefile.objs
>>> index b188f7242b..718b4c2a68 100644
>>> --- a/hw/scsi/Makefile.objs
>>> +++ b/hw/scsi/Makefile.objs
>>> @@ -8,7 +8,7 @@ common-obj-$(CONFIG_ESP) += esp.o
>>>  common-obj-$(CONFIG_ESP_PCI) += esp-pci.o
>>>  obj-$(CONFIG_PSERIES) += spapr_vscsi.o
>>>  
>>> -ifeq ($(CONFIG_VIRTIO),y)
>>> +ifeq ($(CONFIG_VIRTIO_SCSI),y)
>>>  obj-y += virtio-scsi.o virtio-scsi-dataplane.o
>>>  obj-$(CONFIG_VHOST_SCSI) += vhost-scsi-common.o vhost-scsi.o
>>>  obj-$(CONFIG_VHOST_USER_SCSI) += vhost-scsi-common.o vhost-user-scsi.o
>>> diff --git a/hw/virtio/Makefile.objs b/hw/virtio/Makefile.objs
>>> index 765d363c1f..1b2799cfd8 100644
>>> --- a/hw/virtio/Makefile.objs
>>> +++ b/hw/virtio/Makefile.objs
>>> @@ -1,15 +1,17 @@
>>>  ifeq ($(CONFIG_VIRTIO),y)
>>> -common-obj-y += virtio-rng.o
>>> -common-obj-$(CONFIG_VIRTIO_PCI) += virtio-pci.o
>>>  common-obj-y += virtio-bus.o
>>> -common-obj-y += virtio-mmio.o
>>> +obj-y += virtio.o
>>> +
>>> +common-obj-$(CONFIG_VIRTIO_RNG) += virtio-rng.o
>>> +common-obj-$(CONFIG_VIRTIO_PCI) += virtio-pci.o
>>> +common-obj-$(CONFIG_VIRTIO_MMIO) += virtio-mmio.o
>>> +obj-$(CONFIG_VIRTIO_BALLOON) += virtio-balloon.o
>>> +obj-$(CONFIG_VIRTIO_CRYPTO) += virtio-crypto.o
>>> +obj-$(call land,$(CONFIG_VIRTIO_CRYPTO),$(CONFIG_VIRTIO_PCI)) += virtio-crypto-pci.o
>>>  
>>> -obj-y += virtio.o virtio-balloon.o 
>>>  obj-$(CONFIG_LINUX) += vhost.o vhost-backend.o vhost-user.o
>>>  obj-$(CONFIG_VHOST_VSOCK) += vhost-vsock.o
>>> -obj-y += virtio-crypto.o
>>> -obj-$(CONFIG_VIRTIO_PCI) += virtio-crypto-pci.o
>>>  endif
>>>  
>>> -common-obj-$(call lnot,$(CONFIG_LINUX)) += vhost-stub.o
>>> +common-obj-$(call lnot,$(call land,$(CONFIG_VIRTIO),$(CONFIG_LINUX))) += vhost-stub.o
>>>  common-obj-$(CONFIG_ALL) += vhost-stub.o
>>>
> 
> 

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

* Re: [Qemu-devel] [PULL 56/56] hw: make virtio devices configurable via default-configs/
  2018-06-01 17:36       ` Philippe Mathieu-Daudé
@ 2018-06-01 17:57         ` Eric Blake
  0 siblings, 0 replies; 10+ messages in thread
From: Eric Blake @ 2018-06-01 17:57 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé, Paolo Bonzini; +Cc: Fam Zheng, qemu-devel

On 06/01/2018 12:36 PM, Philippe Mathieu-Daudé wrote:
> On 06/01/2018 02:31 PM, Paolo Bonzini wrote:
>> On 01/06/2018 19:26, Philippe Mathieu-Daudé wrote:
>>> On 06/01/2018 02:15 PM, Paolo Bonzini wrote:
>>>> This is only half of the work, because the proxy devices (virtio-*-pci,
>>>> virtio-*-ccw, etc.) are still included unconditionally.  It is still a
>>>> move in the right direction.
>>>>
>>>> Based-on: <20180522194943.24871-1-pbonzini@redhat.com>
>>>
>>> Is this tag useful?
>>
>> Yeah, usually it would go in the cover letter.  It remained here because
>> this patch was not part of a series.
> 
> Sorry I meant "is this useful [in the git history, since this is a pull
> request]".

which further implies that sticking it after a --- line would have been 
appropriate (useful for the list, not so useful for git).

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3266
Virtualization:  qemu.org | libvirt.org

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

* Re: [Qemu-devel] [PULL v2 00/56] Misc patches for 2018-05-31
  2018-06-01 17:15 [Qemu-devel] [PULL v2 00/56] Misc patches for 2018-05-31 Paolo Bonzini
                   ` (2 preceding siblings ...)
  2018-06-01 17:15 ` [Qemu-devel] [PULL 56/56] hw: make virtio devices configurable via default-configs/ Paolo Bonzini
@ 2018-06-04  9:14 ` Peter Maydell
  3 siblings, 0 replies; 10+ messages in thread
From: Peter Maydell @ 2018-06-04  9:14 UTC (permalink / raw)
  To: Paolo Bonzini; +Cc: QEMU Developers

On 1 June 2018 at 18:15, Paolo Bonzini <pbonzini@redhat.com> wrote:
> The following changes since commit 5a5c383b1373aeb6c87a0d6060f6c3dc7c53082b:
>
>   Merge remote-tracking branch 'remotes/vivier2/tags/linux-user-for-2.13-pull-request' into staging (2018-05-25 10:04:36 +0100)
>
> are available in the Git repository at:
>
>   git://github.com/bonzini/qemu.git tags/for-upstream
>
> for you to fetch changes up to b5dfdb082fc350f3e68dfa61dc988d97cad28cfe:
>
>   hw: make virtio devices configurable via default-configs/ (2018-06-01 15:14:31 +0200)
>
> ----------------------------------------------------------------
> * Linux header upgrade (Peter)
> * firmware.json definition (Laszlo)
> * IPMI migration fix (Corey)
> * QOM improvements (Alexey, Philippe, me)
> * Memory API cleanups (Jay, me, Tristan, Peter)
> * WHPX fixes and improvements (Lucian)
> * Chardev fixes (Marc-André)
> * IOMMU documentation improvements (Peter)
> * Coverity fixes (Peter, Philippe)
> * Include cleanup (Philippe)
> * -clock deprecation (Thomas)
> * Disable -sandbox unless CONFIG_SECCOMP (Yi Min Zhao)
> * Configurability improvements (me)
>

Applied, thanks.

-- PMM

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

* Re: [Qemu-devel] [PULL 56/56] hw: make virtio devices configurable via default-configs/
  2018-06-01 17:15 ` [Qemu-devel] [PULL 56/56] hw: make virtio devices configurable via default-configs/ Paolo Bonzini
  2018-06-01 17:26   ` Philippe Mathieu-Daudé
@ 2018-06-30 12:58   ` Peter Maydell
  1 sibling, 0 replies; 10+ messages in thread
From: Peter Maydell @ 2018-06-30 12:58 UTC (permalink / raw)
  To: Paolo Bonzini; +Cc: QEMU Developers

On 1 June 2018 at 18:15, Paolo Bonzini <pbonzini@redhat.com> wrote:
> This is only half of the work, because the proxy devices (virtio-*-pci,
> virtio-*-ccw, etc.) are still included unconditionally.  It is still a
> move in the right direction.
>
> Based-on: <20180522194943.24871-1-pbonzini@redhat.com>
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

Hi. It looks like this commit breaks building with
CONFIG_VIRTIO set but CONFIG_VIRTIO_9P not set (as
we found out with the latest riscv pullreq):

> diff --git a/hw/9pfs/Makefile.objs b/hw/9pfs/Makefile.objs
> index fd90b62900..e3fa673665 100644
> --- a/hw/9pfs/Makefile.objs
> +++ b/hw/9pfs/Makefile.objs
> @@ -1,3 +1,4 @@
> +ifeq ($(call lor,$(CONFIG_VIRTIO_9P),$(CONFIG_XEN)),y)
>  common-obj-y  = 9p.o 9p-util.o
>  common-obj-y += 9p-local.o 9p-xattr.o
>  common-obj-y += 9p-xattr-user.o 9p-posix-acl.o

This if condition guards the definitions of various
FileOperations structs local_ops, etc, but it doesn't
match up with the if guard on the code that uses them,
which is in fsdev/Makefile.obj:

common-obj-$(call land,$(CONFIG_VIRTFS),$(call
lor,$(CONFIG_VIRTIO),$(CONFIG_XEN))) = qemu-fsdev.o 9p-marshal.o
9p-iov-marshal.o

so if you set VIRTIO but not VIRTIO_9P we build the
use but not the definition and linking fails.

thanks
-- PMM

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

end of thread, other threads:[~2018-06-30 12:58 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-01 17:15 [Qemu-devel] [PULL v2 00/56] Misc patches for 2018-05-31 Paolo Bonzini
2018-06-01 17:15 ` [Qemu-devel] [PULL 10/56] bsd-user: include "exec/exec-all.h" which provides mmap_lock/unlock" Paolo Bonzini
2018-06-01 17:15 ` [Qemu-devel] [PULL 55/56] hw: allow compiling out SCSI Paolo Bonzini
2018-06-01 17:15 ` [Qemu-devel] [PULL 56/56] hw: make virtio devices configurable via default-configs/ Paolo Bonzini
2018-06-01 17:26   ` Philippe Mathieu-Daudé
2018-06-01 17:31     ` Paolo Bonzini
2018-06-01 17:36       ` Philippe Mathieu-Daudé
2018-06-01 17:57         ` Eric Blake
2018-06-30 12:58   ` Peter Maydell
2018-06-04  9:14 ` [Qemu-devel] [PULL v2 00/56] Misc patches for 2018-05-31 Peter Maydell

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.