[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 23/53] migration/rdma: Fix QEMUFileHooks method return val
|
From: |
Juan Quintela |
|
Subject: |
Re: [PATCH v2 23/53] migration/rdma: Fix QEMUFileHooks method return values |
|
Date: |
Wed, 04 Oct 2023 18:22:06 +0200 |
|
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.3 (gnu/linux) |
Markus Armbruster <armbru@redhat.com> wrote:
> The QEMUFileHooks methods don't come with a written contract. Digging
> through the code calling them, we find:
>
> * save_page():
>
> Negative values RAM_SAVE_CONTROL_DELAYED and
> RAM_SAVE_CONTROL_NOT_SUPP are special. Any other negative value is
> an unspecified error.
>
> qemu_rdma_save_page() returns -EIO or rdma->error_state on error. I
> believe the latter is always negative. Nothing stops either of them
> to clash with the special values, though. Feels unlikely, but fix
> it anyway to return only the special values and -1.
>
> * before_ram_iterate(), after_ram_iterate():
>
> Negative value means error. qemu_rdma_registration_start() and
> qemu_rdma_registration_stop() comply as far as I can tell. Make
> them comply *obviously*, by returning -1 on error.
>
> * hook_ram_load:
>
> Negative value means error. rdma_load_hook() already returns -1 on
> error. Leave it alone.
>
> Signed-off-by: Markus Armbruster <armbru@redhat.com>
> Reviewed-by: Li Zhijian <lizhijian@fujitsu.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Changed idea. Will include this and rebase mines on top.