mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-22 21:55:25 +00:00
Caps: Disable floppy disk for PowerPC VM
PowerPC pseries based VMs do not support a floppy disk controller. This prohibits libvirt from adding floppy disk for a PowerPC pseries VM. Signed-off-by: Kothapally Madhu Pavan <kmp@linux.vnet.ibm.com>
This commit is contained in:
parent
e1dbce1589
commit
020a178318
@ -3919,25 +3919,32 @@ virQEMUCapsFillDomainOSCaps(virQEMUCapsPtr qemuCaps,
|
||||
|
||||
static int
|
||||
virQEMUCapsFillDomainDeviceDiskCaps(virQEMUCapsPtr qemuCaps,
|
||||
const char *machine,
|
||||
virDomainCapsDeviceDiskPtr disk)
|
||||
{
|
||||
disk->device.supported = true;
|
||||
/* QEMU supports all of these */
|
||||
VIR_DOMAIN_CAPS_ENUM_SET(disk->diskDevice,
|
||||
VIR_DOMAIN_DISK_DEVICE_DISK,
|
||||
VIR_DOMAIN_DISK_DEVICE_CDROM,
|
||||
VIR_DOMAIN_DISK_DEVICE_FLOPPY);
|
||||
VIR_DOMAIN_DISK_DEVICE_CDROM);
|
||||
|
||||
/* PowerPC pseries based VMs do not support floppy device */
|
||||
if (!(ARCH_IS_PPC64(qemuCaps->arch) && STRPREFIX(machine, "pseries")))
|
||||
VIR_DOMAIN_CAPS_ENUM_SET(disk->diskDevice, VIR_DOMAIN_DISK_DEVICE_FLOPPY);
|
||||
|
||||
if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_VIRTIO_BLK_SG_IO))
|
||||
VIR_DOMAIN_CAPS_ENUM_SET(disk->diskDevice, VIR_DOMAIN_DISK_DEVICE_LUN);
|
||||
|
||||
VIR_DOMAIN_CAPS_ENUM_SET(disk->bus,
|
||||
VIR_DOMAIN_DISK_BUS_IDE,
|
||||
VIR_DOMAIN_DISK_BUS_FDC,
|
||||
VIR_DOMAIN_DISK_BUS_SCSI,
|
||||
VIR_DOMAIN_DISK_BUS_VIRTIO,
|
||||
/* VIR_DOMAIN_DISK_BUS_SD */);
|
||||
|
||||
/* PowerPC pseries based VMs do not support floppy device */
|
||||
if (!(ARCH_IS_PPC64(qemuCaps->arch) && STRPREFIX(machine, "pseries")))
|
||||
VIR_DOMAIN_CAPS_ENUM_SET(disk->bus, VIR_DOMAIN_DISK_BUS_FDC);
|
||||
|
||||
if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE_USB_STORAGE))
|
||||
VIR_DOMAIN_CAPS_ENUM_SET(disk->bus, VIR_DOMAIN_DISK_BUS_USB);
|
||||
return 0;
|
||||
@ -4008,7 +4015,7 @@ virQEMUCapsFillDomainCaps(virDomainCapsPtr domCaps,
|
||||
|
||||
if (virQEMUCapsFillDomainOSCaps(qemuCaps, os,
|
||||
loader, nloader) < 0 ||
|
||||
virQEMUCapsFillDomainDeviceDiskCaps(qemuCaps, disk) < 0 ||
|
||||
virQEMUCapsFillDomainDeviceDiskCaps(qemuCaps, domCaps->machine, disk) < 0 ||
|
||||
virQEMUCapsFillDomainDeviceHostdevCaps(qemuCaps, hostdev) < 0)
|
||||
return -1;
|
||||
return 0;
|
||||
|
Loading…
Reference in New Issue
Block a user