On 2012-12-03 16:53,
Osier wrote:
>On 2012年12月03日 11:39, hzguanqiang wrote:
>> On
2012-12-03 10:33, Osier 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
>> 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.
Yes, You are right. And I agree with you
on Eric's practice.
It failed just because the qemu caps is Null when the vm
is inactive.
But what do you mean by saying "the qemu
caps is not related with the domain states"?
Do you mean It's just that way
and I/O tuning can not be set when vm is inactive, Or something is wrong with my
libvirt configure that caused this problem?
Thanks.
2012-12-03
hzguanqiang