On 05/25/2010 10:48 AM, Eric Blake wrote:
On 05/25/2010 08:33 AM, Chris Lalancette wrote:
> Basic live migration was broken by the commit that added
> non-shared block support in two ways:
>
> 1) It added a virCheckFlags() to doNativeMigrate(). Besides
> the fact that typical usage of virCheckFlags() is in driver
> entry points, and doNativeMigrate() is not an entry point,
> it was missing important flags like VIR_MIGRATE_LIVE. Move
> the virCheckFlags to the top-level qemuDomainMigratePrepare2
> and friends.
>
> 2) It also added a memory leak in qemuMonitorTextMigrate()
> by not freeing the memory used by virBufferContentAndReset().
> This is fixed by storing the pointer in a temporary variable
> and freeing it at the end.
>
> With this patch in place, normal live migration works again.
ACK.
>
> v3: Instead of the churn for virCheckFlagsUI and UL, instead
> always promote flags to an unsigned long and always use %lx
> for the fprintf.
Yeah, that is much nicer. And it is easier to extend to unsigned long
long if we ever need it in the future.
Right, my thought too. Thanks, I've pushed this.
--
Chris Lalancette