qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH for-9.1 v5 00/14] migration: Improve error reporting


From: Peter Xu
Subject: Re: [PATCH for-9.1 v5 00/14] migration: Improve error reporting
Date: Fri, 22 Mar 2024 09:42:35 -0400

On Wed, Mar 20, 2024 at 07:48:56AM +0100, Cédric Le Goater wrote:
> Hello,
> 
> The motivation behind these changes is to improve error reporting to
> the upper management layer (libvirt) with a more detailed error, this
> to let it decide, depending on the reported error, whether to try
> migration again later. It would be useful in cases where migration
> fails due to lack of HW resources on the host. For instance, some
> adapters can only initiate a limited number of simultaneous dirty
> tracking requests and this imposes a limit on the the number of VMs
> that can be migrated simultaneously.
> 
> We are not quite ready for such a mechanism but what we can do first is
> to cleanup the error reporting in the early save_setup sequence. This
> is what the following changes propose, by adding an Error** argument to
> various handlers and propagating it to the core migration subsystem.
> 
> 
> Patchset is organized as follow :
> 
> * [1-4] are prerequisite changes in other components related to the
>   migration save_setup() handler. They make sure a failure is not
>   returned without setting an error.
>   
>   s390/stattrib: Add Error** argument to set_migrationmode() handler
>   vfio: Always report an error in vfio_save_setup()
>   migration: Always report an error in block_save_setup()
>   migration: Always report an error in ram_save_setup()
>   migration: Add Error** argument to vmstate_save()
> 
> * [5-14] are the core changes in migration and memory components to
>   propagate an error reported in a save_setup() handler.
> 
>   migration: Add Error** argument to qemu_savevm_state_setup()
>   migration: Add Error** argument to .save_setup() handler
>   migration: Add Error** argument to .load_setup() handler
>   memory: Add Error** argument to .log_global_start() handler
>   migration: Introduce ram_bitmaps_destroy()
>   memory: Add Error** argument to the global_dirty_log routines
>   migration: Add Error** argument to ram_state_init()
>   migration: Add Error** argument to xbzrle_init()
>   migration: Modify ram_init_bitmaps() to report dirty tracking errors
> 
> The VFIO changes depend on the above. They are simpler and have been
> reviewed already. I kept them for another series.

queued for 9.1, thanks.

-- 
Peter Xu




reply via email to

[Prev in Thread] Current Thread [Next in Thread]