
On 2012年12月03日 11:39, hzguanqiang wrote:
On 2012年11月28日 16:34, hzguanqiang wrote:
Hi, guys. I want to change block I/O throttle using 'virsh blkdeviotune' with vm not running, it reported an error: # virsh blkdeviotune instance-000000dc /dev/loop0 --total-bytes-sec 20000000 --total-iops-sec 20 --config error: Unable to change block I/O throttle error: unsupported configuration: block I/O throttling not supported with this QEMU binary I can do this when the vm is running. Is it a bug? How can I fix this problem.
It just looks strange, as you can tune when the VM is active. Because the qemu capabilities is collected during the qemu driver starts up, which is independant with the domain states.
Probably you will want to debug the qemu capabilities collecting process.
Osier Osier, Firstly, thanks for your reply. The situation is that I want to resize the disk and meanwhile reset the block I/O throttle. And during the whole process, The vm is stopped. I've found this was directly caused by the patch "qemu: reject blockiotune if qemu too old" post by Eric Blake long before. I've sent an email to ask him the reason. Maybe, People think you can't set I/O
On 2012-12-03 10:33, Osier wrote: throtting if vm not started, I guess.
Eric's path is good, because it makes no sense to set block IO tune for inactive guest if the qemu doesn't support it, otherwise the guest will fails to start. The key point is why the IO tuning can be set when the guest is active, while fails when it's inactive. Because the qemu caps is not related with the domain states. Regards, Osier