qemu with hax to log dma reads & writes jcs.org/2018/11/12/vfio

scsi: express dependencies with Kconfig

This automatically removes the SCSI subsystem from the
binary altogether if no controllers are selected.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Yang Zhong <yang.zhong@intel.com>
Message-Id: <20190123065618.3520-34-yang.zhong@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

+12 -7
-1
default-configs/arm-softmmu.mak
··· 164 164 CONFIG_MUSICPAL=y 165 165 166 166 # for realview and versatilepb 167 - CONFIG_SCSI=y 168 167 CONFIG_LSI_SCSI_PCI=y
-1
default-configs/hppa-softmmu.mak
··· 7 7 CONFIG_E1000_PCI=y 8 8 CONFIG_IDE_CMD646=y 9 9 # CONFIG_IDE_MMIO=y 10 - CONFIG_SCSI=y 11 10 CONFIG_LSI_SCSI_PCI=y 12 11 CONFIG_VIRTIO_VGA=y 13 12 CONFIG_MC146818RTC=y
-1
default-configs/mips-softmmu-common.mak
··· 4 4 CONFIG_PCI=y 5 5 CONFIG_PCI_DEVICES=y 6 6 CONFIG_ESP=y 7 - CONFIG_SCSI=y 8 7 CONFIG_VGA_ISA=y 9 8 CONFIG_VGA_ISA_MM=y 10 9 CONFIG_VGA_CIRRUS=y
-1
default-configs/sparc-softmmu.mak
··· 2 2 3 3 CONFIG_ISA_BUS=y 4 4 CONFIG_ECC=y 5 - CONFIG_SCSI=y 6 5 CONFIG_ESP=y 7 6 CONFIG_ESCC=y 8 7 CONFIG_M48T59=y
-1
default-configs/virtio.mak
··· 7 7 CONFIG_VIRTIO_INPUT=y 8 8 CONFIG_VIRTIO_NET=y 9 9 CONFIG_VIRTIO_RNG=y 10 - CONFIG_SCSI=y 11 10 CONFIG_VIRTIO_SCSI=y 12 11 CONFIG_VIRTIO_SERIAL=y
+9 -1
hw/scsi/Kconfig
··· 5 5 bool 6 6 default y if PCI_DEVICES 7 7 depends on PCI 8 + select SCSI 8 9 9 10 config MPTSAS_SCSI_PCI 10 11 bool 11 12 default y if PCI_DEVICES 12 13 depends on PCI 14 + select SCSI 13 15 14 16 config MEGASAS_SCSI_PCI 15 17 bool 16 18 default y if PCI_DEVICES 17 19 depends on PCI 20 + select SCSI 18 21 19 22 config VMW_PVSCSI_SCSI_PCI 20 23 bool 21 24 default y if PCI_DEVICES 22 25 depends on PCI 26 + select SCSI 23 27 24 28 config ESP 25 29 bool 30 + select SCSI 26 31 27 32 config ESP_PCI 28 33 bool ··· 34 39 bool 35 40 default y 36 41 depends on PSERIES 42 + select SCSI 37 43 38 44 config VIRTIO_SCSI 39 45 bool 46 + select SCSI 40 47 41 48 config VHOST_USER_SCSI 42 49 bool 43 - default y 50 + # Only PCI devices are provided for now 51 + default y if VIRTIO_PCI 44 52 depends on VHOST_USER && LINUX
+1 -1
hw/scsi/Makefile.objs
··· 6 6 common-obj-$(CONFIG_VMW_PVSCSI_SCSI_PCI) += vmw_pvscsi.o 7 7 common-obj-$(CONFIG_ESP) += esp.o 8 8 common-obj-$(CONFIG_ESP_PCI) += esp-pci.o 9 - obj-$(CONFIG_PSERIES) += spapr_vscsi.o 9 + obj-$(CONFIG_SPAPR_VSCSI) += spapr_vscsi.o 10 10 11 11 ifeq ($(CONFIG_VIRTIO_SCSI),y) 12 12 obj-y += virtio-scsi.o virtio-scsi-dataplane.o
+2
hw/usb/Kconfig
··· 52 52 bool 53 53 default y 54 54 depends on USB 55 + select SCSI 55 56 56 57 config USB_STORAGE_UAS 57 58 bool 58 59 default y 59 60 depends on USB 61 + select SCSI 60 62 61 63 config USB_AUDIO 62 64 bool