mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-27 08:05:24 +00:00
7524cd893e
This reverts commit 5ac846e42e
.
After further discussions with Alon Levy, I learned the following:
The use of '-vga qxl' vs. '-device qxl-vga' is completely orthogonal
to whether ram_size can be exposed. Downstream distros are interested
in backporting support for multi-head qxl, but this can be done in
one of two ways:
1. Support one head per PCI device. If you do this, then it makes
sense to have full control over the PCI address of each device. For
full control, you need '-device qxl-vga' instead of '-vga qxl'.
2. Support multiple heads through a single PCI device. If you do
this, then you need to allocate more RAM to that PCI device (enough
ram to cover the multiple screens). Here, the device is hard-coded
to 0:0:2.0, both in qemu and libvirt code.
Apparently, backporting ram_size changes to allow multiple heads in
a single device is much easier than backporting multiple device
support. Furthermore, the presence or absence of qxl-vga.surfaces
is no different than the presence or absence of qxl-vga.ram_size;
both properties can be applied regardless of whether you have one
PCI device (-vga qxl) or multiple (-device qxl-vga), so this property
is NOT a good witness of whether '-device qxl-vga' support has been
backported.
Downstream RHEL will NOT be using this patch; and worse, leaving this
patch in risks doing the wrong thing if compiling upstream libvirt
on RHEL, so the best course of action is to revert it. That means
that libvirt will go back to only using '-device qxl-vga' for qemu
>= 1.2, but this is just fine because we know of no distros that plan
on backporting multiple PCI address support to any older version of
qemu. Meanwhile, downstream can still use ram_size to pack multiple
heads through a single PCI device.
121 lines
4.0 KiB
Plaintext
121 lines
4.0 KiB
Plaintext
name "pci-bridge", bus PCI
|
|
name "virtio-balloon-pci", bus PCI
|
|
name "virtio-serial-pci", bus PCI, alias "virtio-serial"
|
|
name "virtio-net-pci", bus PCI
|
|
name "virtio-blk-pci", bus PCI, alias "virtio-blk"
|
|
name "i82562", bus PCI
|
|
name "i82559er", bus PCI
|
|
name "i82559c", bus PCI
|
|
name "i82559b", bus PCI
|
|
name "i82559a", bus PCI
|
|
name "i82558b", bus PCI
|
|
name "i82558a", bus PCI
|
|
name "i82557c", bus PCI
|
|
name "i82557b", bus PCI
|
|
name "i82557a", bus PCI
|
|
name "i82551", bus PCI
|
|
name "i82550", bus PCI
|
|
name "pcnet", bus PCI
|
|
name "rtl8139", bus PCI
|
|
name "e1000", bus PCI, desc "Intel Gigabit Ethernet"
|
|
name "ide-drive", bus IDE
|
|
name "isa-ide", bus ISA
|
|
name "ES1370", bus PCI, desc "ENSONIQ AudioPCI ES1370"
|
|
name "AC97", bus PCI, desc "Intel 82801AA AC97 Audio"
|
|
name "intel-hda", bus PCI, desc "Intel HD Audio Controller"
|
|
name "hda-duplex", bus HDA, desc "HDA Audio Codec, duplex"
|
|
name "hda-output", bus HDA, desc "HDA Audio Codec, output-only"
|
|
name "VGA", bus PCI
|
|
name "SUNW,fdtwo", bus System
|
|
name "sysbus-fdc", bus System
|
|
name "isa-serial", bus ISA
|
|
name "cirrus-vga", bus PCI, desc "Cirrus CLGD 54xx VGA"
|
|
name "isa-parallel", bus ISA
|
|
name "sga", bus ISA, desc "Serial Graphics Adapter"
|
|
name "ich9-usb-uhci3", bus PCI
|
|
name "ich9-usb-uhci2", bus PCI
|
|
name "ich9-usb-uhci1", bus PCI
|
|
name "piix4-usb-uhci", bus PCI
|
|
name "piix3-usb-uhci", bus PCI
|
|
name "ib700", bus ISA
|
|
name "ne2k_isa", bus ISA
|
|
name "testdev", bus ISA
|
|
name "pci-assign", bus PCI, desc "pass through host pci devices to the guest"
|
|
name "qxl", bus PCI, desc "Spice QXL GPU (secondary)"
|
|
name "qxl-vga", bus PCI, desc "Spice QXL GPU (primary, vga compatible)"
|
|
name "smbus-eeprom", bus I2C
|
|
name "usb-hub", bus USB
|
|
name "usb-host", bus USB
|
|
name "usb-kbd", bus USB
|
|
name "usb-mouse", bus USB
|
|
name "usb-tablet", bus USB
|
|
name "usb-storage", bus USB
|
|
name "scsi-disk", bus SCSI, desc "virtual SCSI disk or CD-ROM (legacy)"
|
|
name "scsi-cd", bus SCSI, desc "virtual SCSI CD-ROM"
|
|
name "scsi-hd", bus SCSI, desc "virtual SCSI disk"
|
|
name "usb-ccid", bus USB, desc "CCID Rev 1.1 smartcard reader"
|
|
name "ccid-card-passthru", bus ccid-bus, desc "passthrough smartcard"
|
|
name "virtserialport", bus virtio-serial-bus
|
|
name "virtconsole", bus virtio-serial-bus
|
|
name "ich9-usb-ehci1", bus PCI
|
|
name "usb-ehci", bus PCI
|
|
name "i6300esb", bus PCI
|
|
name "ne2k_pci", bus PCI
|
|
pci-assign.host=pci-hostaddr
|
|
pci-assign.iommu=uint32
|
|
pci-assign.bootindex=int32
|
|
pci-assign.configfd=string
|
|
pci-assign.addr=pci-devfn
|
|
pci-assign.romfile=string
|
|
pci-assign.rombar=uint32
|
|
pci-assign.multifunction=on/off
|
|
virtio-blk-pci.class=hex32
|
|
virtio-blk-pci.drive=drive
|
|
virtio-blk-pci.logical_block_size=uint16
|
|
virtio-blk-pci.physical_block_size=uint16
|
|
virtio-blk-pci.min_io_size=uint16
|
|
virtio-blk-pci.opt_io_size=uint32
|
|
virtio-blk-pci.bootindex=int32
|
|
virtio-blk-pci.discard_granularity=uint32
|
|
virtio-blk-pci.ioeventfd=on/off
|
|
virtio-blk-pci.vectors=uint32
|
|
virtio-blk-pci.indirect_desc=on/off
|
|
virtio-blk-pci.event_idx=on/off
|
|
virtio-blk-pci.scsi=on/off
|
|
virtio-blk-pci.addr=pci-devfn
|
|
virtio-blk-pci.romfile=string
|
|
virtio-blk-pci.rombar=uint32
|
|
virtio-blk-pci.multifunction=on/off
|
|
virtio-net-pci.ioeventfd=on/off
|
|
virtio-net-pci.vectors=uint32
|
|
virtio-net-pci.indirect_desc=on/off
|
|
virtio-net-pci.event_idx=on/off
|
|
virtio-net-pci.csum=on/off
|
|
virtio-net-pci.guest_csum=on/off
|
|
virtio-net-pci.gso=on/off
|
|
virtio-net-pci.guest_tso4=on/off
|
|
virtio-net-pci.guest_tso6=on/off
|
|
virtio-net-pci.guest_ecn=on/off
|
|
virtio-net-pci.guest_ufo=on/off
|
|
virtio-net-pci.host_tso4=on/off
|
|
virtio-net-pci.host_tso6=on/off
|
|
virtio-net-pci.host_ecn=on/off
|
|
virtio-net-pci.host_ufo=on/off
|
|
virtio-net-pci.mrg_rxbuf=on/off
|
|
virtio-net-pci.status=on/off
|
|
virtio-net-pci.ctrl_vq=on/off
|
|
virtio-net-pci.ctrl_rx=on/off
|
|
virtio-net-pci.ctrl_vlan=on/off
|
|
virtio-net-pci.ctrl_rx_extra=on/off
|
|
virtio-net-pci.mac=macaddr
|
|
virtio-net-pci.vlan=vlan
|
|
virtio-net-pci.netdev=netdev
|
|
virtio-net-pci.bootindex=int32
|
|
virtio-net-pci.x-txtimer=uint32
|
|
virtio-net-pci.x-txburst=int32
|
|
virtio-net-pci.tx=string
|
|
virtio-net-pci.addr=pci-devfn
|
|
virtio-net-pci.romfile=string
|
|
virtio-net-pci.rombar=uint32
|
|
virtio-net-pci.multifunction=on/off
|