[libvirt-users] Getting libvirt Error when setting IO tune read_bytes_sec value using libvirt API virDomainSetBlockIotune

vikrant verma vikrantverma99 at gmail.com
Thu May 9 12:31:03 UTC 2013


Hi Michal,

I am using qemu version 1.0 (qemu-kvm-1.0) i guess this is the problem,
should i have to upgrade the qemu version inorder to get the things work?

Regards,
Vikrant


On Thu, May 9, 2013 at 5:54 PM, vikrant verma <vikrantverma99 at gmail.com>wrote:

> Hi Michal,
>
> Thanks for the reply.
>
> But i want to keep this setting, my intention is to set IO throttling (IO
> tunning) over the block storage which is attached to the VM.
>
> As per my understanding there are 2 ways to do it.
>
> 1. Using Cgroup - we can put the IO throttling on the device using
> cgroup command (this i have tried and it is working)
>
> 2. Using Libvirt API virDomainSetBlockIoTune() - But i am not able to
> achieve the IO throttling using it, please suggest how to do it.
>
> Please let me know how to do it using Libvirt.
>
> Regards,
> Vikrant
>
>
>
>
> On Thu, May 9, 2013 at 5:42 PM, Michal Privoznik <mprivozn at redhat.com>wrote:
>
>> On 09.05.2013 14:02, vikrant verma wrote:
>> > Hi All,
>> >
>> >  I am setting the value for  "read_bytes_sec"  using the following API
>> code
>> >
>> > virDomainSetBlockIoTune(dom, "/mnt/tmpsdb/FileVM1", parainfoPtr,
>> > nparams, 2);
>> >
>> > I am succesfully able to set this value and i can read it back using
>> the API
>> >
>> >
>> >
>> virDomainGetBlockIoTune(dom,"/mnt/tmpsdb/FileVM1",parainfoPtr,&nparams,2);
>> >
>> > But after setting this value when i shutdown my VM and start it again I
>> > am getting following error -
>> >
>> > ibvirtError: internal error Process exited while reading console log
>> > output: qemu-system-x86_64: -drive
>> >
>> file=/mnt/tmpsdb/FileVM1,if=none,id=drive-ide0-1-1,format=raw,bps_rd=1048576:
>> > Invalid parameter 'bps_rd'
>>
>> Interesting. What's the qemu version? bps_rs has been introduced in
>> qemu-1.1 IIRC.
>>
>> >
>> >
>> > Note - when i see dumpxml of the VM following lines are got added after
>> > setting the iotunes for read_bytes_sec
>> >
>> >  <iotune>
>> >         <read_bytes_sec>1048576</read_bytes_sec>
>> >       </iotune>
>> >
>>
>> Yep, that's correct. If you don't need this setting anymore, just delete
>> it (e.g. by using virsh edit) and you should be able to start the domain
>> up again.
>>
>> >
>> > Please help me. Also i wanted to know whether we can set block IO tune
>> > for a VM using the above API. Is it same as the IO throttling provided
>> > by cgroup?
>> >
>> >
>> >
>>
>> Michal
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/libvirt-users/attachments/20130509/68077ad1/attachment.htm>


More information about the libvirt-users mailing list