return -1;
}
- if (disk->queues) {
- virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
- _("queues attribute in disk driver element is only supported for virtio bus"));
- return -1;
- }
-
- if (disk->queue_size) {
- virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
- _("queue_size attribute in disk driver is only supported for virtio bus"));
- return -1;
- }
-
if (disk->event_idx != VIR_TRISTATE_SWITCH_ABSENT) {
virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
_("disk event_idx mode supported only for virtio bus"));
}
}
+ for (i = 0; i < def->ndisks; i++) {
+ virDomainDiskDef *disk = def->disks[i];
+
+ if (disk->bus != VIR_DOMAIN_DISK_BUS_VIRTIO) {
+ if (disk->queues) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
+ _("queues attribute in disk driver element is only supported for virtio bus"));
+ return -1;
+ }
+
+ if (disk->queue_size) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
+ _("queue_size attribute in disk driver is only supported for virtio bus"));
+ return -1;
+ }
+ }
+ }
+
return 0;
}
}
}
+ if (disk->bus != VIR_DOMAIN_DISK_BUS_VIRTIO) {
+ if (disk->queues) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
+ _("queues attribute in disk driver element is only supported for virtio bus"));
+ return -1;
+ }
+
+ if (disk->queue_size) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
+ _("queue_size attribute in disk driver is only supported for virtio bus"));
+ return -1;
+ }
+ }
+
return 0;
}