On 08/30/2016 06:21 PM, Jim Fehlig wrote:
On 08/30/2016 08:45 AM, Joao Martins wrote:
> On 08/29/2016 06:20 PM, Jim Fehlig wrote:
>> The libxl driver has long supported migration V3 but has never
>> indicated so in the connectSupportsFeature API.
> Hmm, but IIRC it was only since "recent" commit 8db77b3 right?
The libxl driver has supported the VIR_DRV_FEATURE_MIGRATION_PARAMS V3 family of
migration functions since commit 9b8d6e1e in May 2014.
Indeed.
> Or rather Nikolay's
> reworking top-level migration code, which effectively would convert to the params
> versions accordingly. Before that rework I think one had to implement both params
and
> non-params variants. Would it be worth adding a comment mainly to help the reader?
I think you are right, but support for V3 is independent of the params vs
non-params variants. virt-manager uses the generic virDomainMigrate() function
in src/libvirt-domain.c, and at least as far back as libvirt 1.2.5 that function
tests whether both source and destination support
VIR_DRV_FEATURE_MIGRATION_V{1,2,3}. If the driver doesn't advertise support for
any of the versions, virDomainMigrate() returns VIR_ERR_NO_SUPPORT.
Hmm, OK. IIRC
the problems I once observed where more around virDomainMigrateToURI -
which got addressed in the series containing the commit above. Anyhow sorry for the
noise!
>
> (I vaguely remember this as I dropped my v3 patch as being no longer necessary)
>
>> As a result, apps
>> such as virt-manager that use the more generic virDomainMigrate API
>> fail with
>>
>> libvirtError: this function is not supported by the connection driver:
>> virDomainMigrate
>>
>> Add VIR_DRV_FEATURE_MIGRATION_V3 to the list of features marked as
>> supported in the connectSupportsFeature API.
> FWIW and irrespective of the comment above:
>
> Reviewed-by: Joao Martins <joao.m.martins(a)oracle.com>
Thanks. Along with Cedric's ACK, and considering it is a trivial bug fix, I plan
to push this for RC2.
Cool.
Regards,
Joao