17-Jun-16 13:46, Nikolay Shirokovskiy пишет:
On 17.06.2016 12:43, Nikolay Shirokovskiy wrote:
>
> On 16.06.2016 14:59, Nikolay Shirokovskiy wrote:
>> Current vz driver implementation is not usable when it comes to
>> long runnig operations. Migration or saving a domain blocks all
>> other operations even query ones which are expecteted to be available.
>> This patch address this problem.
>>
> ...
>
>> @@ -2436,6 +2504,7 @@ vzDomainMigratePerformStep(virDomainPtr domain,
>> const char *miguri = NULL;
>> const char *dname = NULL;
>> vzMigrationCookiePtr mig = NULL;
>> + bool job = false;
>>
>> virCheckFlags(VZ_MIGRATION_FLAGS, -1);
>>
>> @@ -2458,9 +2527,13 @@ vzDomainMigratePerformStep(virDomainPtr domain,
>> VZ_MIGRATION_COOKIE_SESSION_UUID)))
>> goto cleanup;
>>
>> - if (!(dom = vzDomObjFromDomain(domain)))
>> + if (!(dom = vzDomObjFromDomainRef(domain)))
>> goto cleanup;
>>
>> + if (vzDomainObjBeginJob(dom) < 0)
>> + goto cleanup;
>> + job = true;
>> +
>> if (!(vzuri = vzParseVzURI(miguri)))
>> goto cleanup;
>>
>> @@ -2473,8 +2546,9 @@ vzDomainMigratePerformStep(virDomainPtr domain,
>> ret = 0;
> a mistake here makes migrating disfuntional, here is tiny fix to squash in:
>
>
here is correct fix )), it affects another place where we delete domain object at
the end of operation
Though I agree this the approach of the whole series, this amendment to
the 3/3 patch doesn't work either. Could you please resend the series
rebased and corrected ?