diff options
author | Anthony Liguori <aliguori@us.ibm.com> | 2012-04-16 12:52:22 -0500 |
---|---|---|
committer | Anthony Liguori <aliguori@us.ibm.com> | 2012-04-16 12:52:22 -0500 |
commit | 52346e8c75eba1ece4a782565d5a5ce2e23d5117 (patch) | |
tree | 4f488cf316c85b886e9ef4b67b85bbb4ad0d314f /hw/virtio-pci.c | |
parent | 8a6b8708e37a4df064aa3b36d7baa786110871f4 (diff) | |
parent | cdde6ffc27517bdf069734fbc5693ce2b14edc75 (diff) |
Merge remote-tracking branch 'mst/tags/for_anthony' into staging
* mst/tags/for_anthony:
pci: fix corrupted pci conf index register by unaligned write
acpi: explicitly account for >1 device per slot
acpi_piix4: Re-define PCI hotplug eject register read
acpi_piix4: Remove PCI_RMV_BASE write code
acpi_piix4: Fix PCI hotplug race
acpi_piix4: Disallow write to up/down PCI hotplug registers
virtio-pci: change virtio balloon PCI class code
ivshmem: add missing msix calls
vhost: readd assert statement
vhost: Fix size of dirty log sync on resize
pc: reduce duplication in compat machine types
piix_pci: fix typo in i400FX chipset init code
Diffstat (limited to 'hw/virtio-pci.c')
-rw-r--r-- | hw/virtio-pci.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/hw/virtio-pci.c b/hw/virtio-pci.c index a0fb7c1b9c..4a4413d52c 100644 --- a/hw/virtio-pci.c +++ b/hw/virtio-pci.c @@ -790,6 +790,11 @@ static int virtio_balloon_init_pci(PCIDevice *pci_dev) VirtIOPCIProxy *proxy = DO_UPCAST(VirtIOPCIProxy, pci_dev, pci_dev); VirtIODevice *vdev; + if (proxy->class_code != PCI_CLASS_OTHERS && + proxy->class_code != PCI_CLASS_MEMORY_RAM) { /* qemu < 1.1 */ + proxy->class_code = PCI_CLASS_OTHERS; + } + vdev = virtio_balloon_init(&pci_dev->qdev); if (!vdev) { return -1; @@ -906,6 +911,7 @@ static TypeInfo virtio_serial_info = { static Property virtio_balloon_properties[] = { DEFINE_VIRTIO_COMMON_FEATURES(VirtIOPCIProxy, host_features), + DEFINE_PROP_HEX32("class", VirtIOPCIProxy, class_code, 0), DEFINE_PROP_END_OF_LIST(), }; @@ -919,7 +925,7 @@ static void virtio_balloon_class_init(ObjectClass *klass, void *data) k->vendor_id = PCI_VENDOR_ID_REDHAT_QUMRANET; k->device_id = PCI_DEVICE_ID_VIRTIO_BALLOON; k->revision = VIRTIO_PCI_ABI_VERSION; - k->class_id = PCI_CLASS_MEMORY_RAM; + k->class_id = PCI_CLASS_OTHERS; dc->reset = virtio_pci_reset; dc->props = virtio_balloon_properties; } |