diff options
author | Marcel Apfelbaum <marcel@redhat.com> | 2016-09-07 18:02:25 +0300 |
---|---|---|
committer | Michael S. Tsirkin <mst@redhat.com> | 2016-09-09 20:58:34 +0300 |
commit | d9997d89a4a09a330a056929d06d4b7b0b7a8239 (patch) | |
tree | 5e4e10bea0a4a1c27cde5ba67458a52bbd4c3a84 /hw/virtio/virtio-pci.h | |
parent | 14c985cffa6cb177fc01a163d8bcf227c104718c (diff) | |
download | qemu-d9997d89a4a09a330a056929d06d4b7b0b7a8239.zip qemu-d9997d89a4a09a330a056929d06d4b7b0b7a8239.tar.gz qemu-d9997d89a4a09a330a056929d06d4b7b0b7a8239.tar.bz2 |
virtio-pci: reduce modern_mem_bar size
Currently each VQ Notification Virtio Capability is allocated
on a different page. The idea is to enable split drivers within
guests, however there are no known plans to do that.
The allocation will result in a 8MB BAR, more than various
guest firmwares pre-allocates for PCI Bridges hotplug process.
Reserve 4 bytes per VQ by default and add a new parameter
"page-per-vq" to be used with split drivers.
Signed-off-by: Marcel Apfelbaum <marcel@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'hw/virtio/virtio-pci.h')
-rw-r--r-- | hw/virtio/virtio-pci.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/hw/virtio/virtio-pci.h b/hw/virtio/virtio-pci.h index 25fbf8a..a745512 100644 --- a/hw/virtio/virtio-pci.h +++ b/hw/virtio/virtio-pci.h @@ -64,6 +64,7 @@ enum { VIRTIO_PCI_FLAG_MIGRATE_EXTRA_BIT, VIRTIO_PCI_FLAG_MODERN_PIO_NOTIFY_BIT, VIRTIO_PCI_FLAG_DISABLE_PCIE_BIT, + VIRTIO_PCI_FLAG_PAGE_PER_VQ_BIT, }; /* Need to activate work-arounds for buggy guests at vmstate load. */ @@ -84,6 +85,10 @@ enum { #define VIRTIO_PCI_FLAG_MODERN_PIO_NOTIFY \ (1 << VIRTIO_PCI_FLAG_MODERN_PIO_NOTIFY_BIT) +/* page per vq flag to be used by split drivers within guests */ +#define VIRTIO_PCI_FLAG_PAGE_PER_VQ \ + (1 << VIRTIO_PCI_FLAG_PAGE_PER_VQ_BIT) + typedef struct { MSIMessage msg; int virq; |