@@ -92,6 +92,8 @@ function get_driver_iothread() {
9292
9393 if [[ " ${IOTHREAD} " =~ ^[0-9]+$ ]] && [ " ${IOTHREAD} " -gt 0 ]; then
9494 iothreadid_i=" ${IOTHREAD} "
95+ elif [[ " ${DISK_ID} " =~ ^[0-9]+$ ]]; then
96+ iothreadid_i=$(( DISK_ID % domain_iothreads + 1 ))
9597 else
9698 iothreadid_i=1
9799 fi
@@ -127,19 +129,26 @@ WRITE_IOPS_SEC=${WRITE_IOPS_SEC:-${DEFAULT_ATTACH_WRITE_IOPS_SEC}}
127129WRITE_IOPS_SEC_MAX_LENGTH=${WRITE_IOPS_SEC_MAX_LENGTH:- ${DEFAULT_ATTACH_WRITE_IOPS_SEC_MAX_LENGTH} }
128130WRITE_IOPS_SEC_MAX=${WRITE_IOPS_SEC_MAX:- ${DEFAULT_ATTACH_WRITE_IOPS_SEC_MAX} }
129131SIZE_IOPS_SEC=${SIZE_IOPS_SEC:- ${DEFAULT_ATTACH_SIZE_IOPS_SEC} }
130- IOTHREAD=${IOTHREAD:- ${DEFAULT_ATTACH_VIRTIO_BLK_IOTHREAD} }
131- VIRTIO_BLK_QUEUES=${VIRTIO_BLK_QUEUES:- ${VM_VIRTIO_BLK_QUEUES} }
132- VIRTIO_BLK_QUEUES=${VIRTIO_BLK_QUEUES:- ${DEFAULT_ATTACH_VIRTIO_BLK_QUEUES} }
133132
134133if [ " ${TYPE} " = " cdrom" ]; then
135134 DRIVER=" raw"
136135fi
137136
138- if [ " ${VIRTIO_BLK_QUEUES} " = " auto" ]; then
139- VIRTIO_BLK_QUEUES=" $VCPU "
140- fi
137+ if [ " ${DEVICE} " = " disk" ] && [ -z " ${TARGET## vd* } " ]; then
138+ IOTHREAD=${IOTHREAD:- ${DEFAULT_ATTACH_VIRTIO_BLK_IOTHREAD} }
139+ VIRTIO_BLK_QUEUES=${VIRTIO_BLK_QUEUES:- ${VM_VIRTIO_BLK_QUEUES} }
140+ VIRTIO_BLK_QUEUES=${VIRTIO_BLK_QUEUES:- ${DEFAULT_ATTACH_VIRTIO_BLK_QUEUES} }
141+
142+ if [ " ${VIRTIO_BLK_QUEUES} " = " auto" ]; then
143+ VIRTIO_BLK_QUEUES=" $VCPU "
144+ fi
141145
142- DRIVER_IOTHREAD=$( get_driver_iothread)
146+ DRIVER_IOTHREAD=$( get_driver_iothread)
147+ else
148+ IOTHREAD=" "
149+ VIRTIO_BLK_QUEUES=" "
150+ DRIVER_IOTHREAD=" "
151+ fi
143152
144153# disk XML
145154XML=' '
0 commit comments