mirror of https://github.com/xemu-project/xemu.git
virtio: kconfig: memory devices are PCI only
Virtio memory devices rely on PCI BARs to expose the contents of memory. Because of this they cannot be used (yet) with virtio-mmio or virtio-ccw. In fact the code that is common to virtio-mem and virtio-pmem, which is in hw/virtio/virtio-md-pci.c, is only included if CONFIG_VIRTIO_PCI is set. Reproduce the same condition in the Kconfig file, only allowing VIRTIO_MEM and VIRTIO_PMEM to be defined if the transport supports it. Without this patch it is possible to create a configuration with CONFIG_VIRTIO_PCI=n and CONFIG_VIRTIO_MEM=y, but that causes a linking failure. Message-ID: <20240906101658.514470-1-pbonzini@redhat.com> Reported-by: Michael Tokarev <mjt@tls.msk.ru> Reviewed-by: David Hildenbrand <david@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: David Hildenbrand <david@redhat.com>
This commit is contained in:
parent
01dc65a3bc
commit
8d018fe59a
|
@ -16,6 +16,7 @@ config VIRTIO_PCI
|
|||
default y if PCI_DEVICES
|
||||
depends on PCI
|
||||
select VIRTIO
|
||||
select VIRTIO_MD_SUPPORTED
|
||||
|
||||
config VIRTIO_MMIO
|
||||
bool
|
||||
|
@ -35,10 +36,17 @@ config VIRTIO_CRYPTO
|
|||
default y
|
||||
depends on VIRTIO
|
||||
|
||||
# not all virtio transports support memory devices; if none does,
|
||||
# no need to include the code
|
||||
config VIRTIO_MD_SUPPORTED
|
||||
bool
|
||||
|
||||
config VIRTIO_MD
|
||||
bool
|
||||
depends on VIRTIO_MD_SUPPORTED
|
||||
select MEM_DEVICE
|
||||
|
||||
# selected by the board if it has the required support code
|
||||
config VIRTIO_PMEM_SUPPORTED
|
||||
bool
|
||||
|
||||
|
@ -46,9 +54,11 @@ config VIRTIO_PMEM
|
|||
bool
|
||||
default y
|
||||
depends on VIRTIO
|
||||
depends on VIRTIO_MD_SUPPORTED
|
||||
depends on VIRTIO_PMEM_SUPPORTED
|
||||
select VIRTIO_MD
|
||||
|
||||
# selected by the board if it has the required support code
|
||||
config VIRTIO_MEM_SUPPORTED
|
||||
bool
|
||||
|
||||
|
@ -57,6 +67,7 @@ config VIRTIO_MEM
|
|||
default y
|
||||
depends on VIRTIO
|
||||
depends on LINUX
|
||||
depends on VIRTIO_MD_SUPPORTED
|
||||
depends on VIRTIO_MEM_SUPPORTED
|
||||
select VIRTIO_MD
|
||||
|
||||
|
|
Loading…
Reference in New Issue