[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

[libvirt] virDomainMigrate, "suitable default" for omitted bandwidth parameter



Hi,

does somebody know what the following paragraph exactly means resp. what it should mean?

"The maximum bandwidth (in Mbps) that will be used to do migration can be specified with the bandwidth parameter. *If set to 0, libvirt will choose a suitable default*."

http://libvirt.org/html/libvirt-libvirt.html#virDomainMigrate

What is the "suitable default"? I looked through the code for qemu and the only call to qemuMonitorSetMigrationSpeed() I can find is in ./src/qemu/qemu_driver.c:8406, using libvirt 0.8.7. When I remember correctly the second condition in a conjunction will not be evaluated if the first one evaluates to false? So if resource == 0, no limit will be set?

I ask because I discovered that qemu is live migrating with a hard coded throttle of 32MiB/s for historic reasons, which is an activated handbrake if you have GBit Ethernet and additionally annoying when thinking about qemu's broken way of live migration (no maximum amount of iterations, no forced action, no error message, no abortion - no *nothing*.). Effectively *using* GBit Ethernet often solves this problem as the bandwidth to transfer dirty pages is quadrupled.

Also see qemu mailing list, Message-ID: <4D52D95D 3030300 scripty at>

There was a short discussion on IRC where concerns of "breaking libvirt" when deactivating the default limit were stated. If there really are applications that depend on handbraked live migration, I think these applications just should pass the limit they need to virDomainMigrate(). What do you think?


regards,
-t


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]