qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Cédric Le Goater" <clg@redhat.com>
To: Eric Auger <eauger@redhat.com>, qemu-devel@nongnu.org
Cc: "Peter Xu" <peterx@redhat.com>, "Fabiano Rosas" <farosas@suse.de>,
	"Alex Williamson" <alex.williamson@redhat.com>,
	"Avihai Horon" <avihaih@nvidia.com>,
	"Philippe Mathieu-Daudé" <philmd@linaro.org>,
	"Markus Armbruster" <armbru@redhat.com>
Subject: Re: [PATCH v6 3/9] migration: Extend migration_file_set_error() with Error* argument
Date: Wed, 15 May 2024 19:15:12 +0200	[thread overview]
Message-ID: <300072b4-857d-4740-ab8f-5f10a000f5d0@redhat.com> (raw)
In-Reply-To: <7d4c47ef-f312-4735-ab8b-1bbc841ed3a4@redhat.com>

On 5/15/24 09:04, Eric Auger wrote:
> Hi Cédric,
> 
> On 5/14/24 17:31, Cédric Le Goater wrote:
>> Use it to update the current error of the migration stream if
>> available and if not, simply print out the error. Next changes will
>> update with an error to report.
>>
>> Reviewed-by: Avihai Horon <avihaih@nvidia.com>
>> Acked-by: Fabiano Rosas <farosas@suse.de>
>> Signed-off-by: Cédric Le Goater <clg@redhat.com>
>> ---
>>
>>   Changes in v6:
>>
>>   - Commit log improvements (Avihai)
>>   
>>   include/migration/misc.h | 2 +-
>>   hw/vfio/common.c         | 2 +-
>>   hw/vfio/migration.c      | 4 ++--
>>   migration/migration.c    | 6 ++++--
>>   4 files changed, 8 insertions(+), 6 deletions(-)
>>
>> diff --git a/include/migration/misc.h b/include/migration/misc.h
>> index bf7339cc1e6430226127fb6a878d06b458170858..bfadc5613bac614a316e5aed7da95d8c7845cf42 100644
>> --- a/include/migration/misc.h
>> +++ b/include/migration/misc.h
>> @@ -97,7 +97,7 @@ void migration_add_notifier_mode(NotifierWithReturn *notify,
>>   
>>   void migration_remove_notifier(NotifierWithReturn *notify);
>>   bool migration_is_running(void);
>> -void migration_file_set_error(int err);
>> +void migration_file_set_error(int ret, Error *err);
>>   
>>   /* True if incoming migration entered POSTCOPY_INCOMING_DISCARD */
>>   bool migration_in_incoming_postcopy(void);
>> diff --git a/hw/vfio/common.c b/hw/vfio/common.c
>> index b5102f54a6474a50c6366e8fbce23812d55e384e..ed5ee6349ced78b3bde68d2ee506f78ba1a9dd9c 100644
>> --- a/hw/vfio/common.c
>> +++ b/hw/vfio/common.c
>> @@ -150,7 +150,7 @@ bool vfio_viommu_preset(VFIODevice *vbasedev)
>>   static void vfio_set_migration_error(int err)
> nit: I would have renamed err into ret here to avoid any further confusion.

That was done in v5 :

   https://lore.kernel.org/qemu-devel/20240506092053.388578-11-clg@redhat.com/

in the last patch, that I dropped in v6 because I believe it needs more
work. I will address these last changes, including the err->ret rename,
in a followup series if that's ok with you.


Thanks,

C.




>>   {
>>       if (migration_is_setup_or_active()) {
>> -        migration_file_set_error(err);
>> +        migration_file_set_error(err, NULL);
>>       }
>>   }
>>   
>> diff --git a/hw/vfio/migration.c b/hw/vfio/migration.c
>> index 06ae40969b6c19037e190008e14f28be646278cd..bf2fd0759ba6e4fb103cc5c1a43edb180a3d0de4 100644
>> --- a/hw/vfio/migration.c
>> +++ b/hw/vfio/migration.c
>> @@ -726,7 +726,7 @@ static void vfio_vmstate_change_prepare(void *opaque, bool running,
>>            * Migration should be aborted in this case, but vm_state_notify()
>>            * currently does not support reporting failures.
>>            */
>> -        migration_file_set_error(ret);
>> +        migration_file_set_error(ret, NULL);
>>       }
>>   
>>       trace_vfio_vmstate_change_prepare(vbasedev->name, running,
>> @@ -756,7 +756,7 @@ static void vfio_vmstate_change(void *opaque, bool running, RunState state)
>>            * Migration should be aborted in this case, but vm_state_notify()
>>            * currently does not support reporting failures.
>>            */
>> -        migration_file_set_error(ret);
>> +        migration_file_set_error(ret, NULL);
>>       }
>>   
>>       trace_vfio_vmstate_change(vbasedev->name, running, RunState_str(state),
>> diff --git a/migration/migration.c b/migration/migration.c
>> index e88b24f1e6cbe82dad3f890c00e264d2ab6ad355..70d66a441bf04761decf91dbe57ce52c57fde58f 100644
>> --- a/migration/migration.c
>> +++ b/migration/migration.c
>> @@ -2994,13 +2994,15 @@ static MigThrError postcopy_pause(MigrationState *s)
>>       }
>>   }
>>   
>> -void migration_file_set_error(int err)
>> +void migration_file_set_error(int ret, Error *err)
>>   {
>>       MigrationState *s = current_migration;
>>   
>>       WITH_QEMU_LOCK_GUARD(&s->qemu_file_lock) {
>>           if (s->to_dst_file) {
>> -            qemu_file_set_error(s->to_dst_file, err);
>> +            qemu_file_set_error_obj(s->to_dst_file, ret, err);
>> +        } else if (err) {
>> +            error_report_err(err);
>>           }
>>       }
>>   }
> Reviewed-by: Eric Auger <eric.auger@redhat.com>
> 
> Eric
> 



  reply	other threads:[~2024-05-15 17:16 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-05-14 15:31 [PATCH v6 0/9] vfio: Improve error reporting (part 2 Cédric Le Goater
2024-05-14 15:31 ` [PATCH v6 1/9] vfio: Add Error** argument to .set_dirty_page_tracking() handler Cédric Le Goater
2024-05-15  6:40   ` Eric Auger
2024-05-15 16:55     ` Cédric Le Goater
2024-05-14 15:31 ` [PATCH v6 2/9] vfio: Add Error** argument to vfio_devices_dma_logging_start() Cédric Le Goater
2024-05-15  6:53   ` Eric Auger
2024-05-15 17:09     ` Cédric Le Goater
2024-05-14 15:31 ` [PATCH v6 3/9] migration: Extend migration_file_set_error() with Error* argument Cédric Le Goater
2024-05-15  7:04   ` Eric Auger
2024-05-15 17:15     ` Cédric Le Goater [this message]
2024-05-14 15:31 ` [PATCH v6 4/9] vfio/migration: Add an Error** argument to vfio_migration_set_state() Cédric Le Goater
2024-05-15  7:20   ` Eric Auger
2024-05-16  7:17     ` Cédric Le Goater
2024-05-16  8:18   ` Avihai Horon
2024-05-16 12:07     ` Cédric Le Goater
2024-05-14 15:31 ` [PATCH v6 5/9] vfio/migration: Add Error** argument to .vfio_save_config() handler Cédric Le Goater
2024-05-15  9:20   ` Eric Auger
2024-05-16  8:22   ` Avihai Horon
2024-05-14 15:31 ` [PATCH v6 6/9] vfio: Reverse test on vfio_get_xlat_addr() Cédric Le Goater
2024-05-15  9:22   ` Eric Auger
2024-05-14 15:31 ` [PATCH v6 7/9] memory: Add Error** argument to memory_get_xlat_addr() Cédric Le Goater
2024-05-15  9:25   ` Eric Auger
2024-05-16  8:25   ` Avihai Horon
2024-05-14 15:31 ` [PATCH v6 8/9] vfio: Add Error** argument to .get_dirty_bitmap() handler Cédric Le Goater
2024-05-15  9:34   ` Eric Auger
2024-05-16  8:42   ` Avihai Horon
2024-05-16 12:22     ` Cédric Le Goater
2024-05-14 15:31 ` [PATCH v6 9/9] vfio: Also trace event failures in vfio_save_complete_precopy() Cédric Le Goater
2024-05-15  9:34   ` Eric Auger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=300072b4-857d-4740-ab8f-5f10a000f5d0@redhat.com \
    --to=clg@redhat.com \
    --cc=alex.williamson@redhat.com \
    --cc=armbru@redhat.com \
    --cc=avihaih@nvidia.com \
    --cc=eauger@redhat.com \
    --cc=farosas@suse.de \
    --cc=peterx@redhat.com \
    --cc=philmd@linaro.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).