[PATCH] libxl: Defer starting job until migration perform phase
Jim Fehlig
jfehlig at suse.com
Wed Jul 12 22:09:27 UTC 2023
On 7/10/23 17:00, Jim Fehlig wrote:
> On 7/7/23 14:17, Jim Fehlig wrote:
>> Currently the libxl driver calls virDomainObjBeginJob in the begin
>> phase of migration on the source host, expecting to call virDomainObjEndJob
>> in the confirm phase. But the confirm phase is never executed if the
>> prepare or perform phases fail. The job was already being terminated
>> in the perform phase in case of failure, but there is no way to do that
>> if the prepare phase fails since it runs on the destination host.
>>
>> Move the call to virDomainObjBeginJob to the perform phase. It can be
>> terminated there in the event of failure. On success, the confirm phase
>> will be executed, ensuring the job is terminated.
>
> After taking another look at the job handling code in libxl_migration.c, and
> reviewing the documentation for VIR_MIGRATE_CHANGE_PROTECTION, I realize the
> libxl driver is making a weak attempt at implementing CHANGE_PROTECTION without
> advertising it. I need to do a bit more thinking/testing if the current attempt
> is strong enough, and if so drop this patch in favor of simply advertising
> support for CHANGE_PROTECTION.
FTR, self-NACK this patch in favor of
https://listman.redhat.com/archives/libvir-list/2023-July/240681.html
Regards,
Jim
More information about the libvir-list
mailing list