qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Peter Xu <peterx@redhat.com>
To: qemu-devel@nongnu.org
Cc: peterx@redhat.com,
	Leonardo Bras Soares Passos <lsoaresp@redhat.com>,
	Fabiano Rosas <farosas@suse.de>,
	Juan Quintela <quintela@redhat.com>,
	Lukas Straub <lukasstraub2@web.de>
Subject: [PATCH 5/7] migration: Display error in query-migrate irrelevant of status
Date: Wed, 28 Jun 2023 17:50:00 -0400	[thread overview]
Message-ID: <20230628215002.73546-6-peterx@redhat.com> (raw)
In-Reply-To: <20230628215002.73546-1-peterx@redhat.com>

Display it as long as being set, irrelevant of FAILED status.  E.g., it may
also be applicable to PAUSED stage of postcopy, to provide hint on what has
gone wrong.

The error_mutex seems to be overlooked when referencing the error, add it
to be very safe.

Signed-off-by: Peter Xu <peterx@redhat.com>
---
 migration/migration.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/migration/migration.c b/migration/migration.c
index 234dd3601d..7455353918 100644
--- a/migration/migration.c
+++ b/migration/migration.c
@@ -1033,9 +1033,6 @@ static void fill_source_migration_info(MigrationInfo *info)
         break;
     case MIGRATION_STATUS_FAILED:
         info->has_status = true;
-        if (s->error) {
-            info->error_desc = g_strdup(error_get_pretty(s->error));
-        }
         break;
     case MIGRATION_STATUS_CANCELLED:
         info->has_status = true;
@@ -1045,6 +1042,11 @@ static void fill_source_migration_info(MigrationInfo *info)
         break;
     }
     info->status = state;
+
+    QEMU_LOCK_GUARD(&s->error_mutex);
+    if (s->error) {
+        info->error_desc = g_strdup(error_get_pretty(s->error));
+    }
 }
 
 static void fill_destination_migration_info(MigrationInfo *info)
-- 
2.41.0



  parent reply	other threads:[~2023-06-28 21:51 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-28 21:49 [PATCH 0/7] migration: Better error handling in return path thread Peter Xu
2023-06-28 21:49 ` [PATCH 1/7] migration: Let migrate_set_error() take ownership Peter Xu
2023-06-28 21:49 ` [PATCH 2/7] migration: Introduce migrate_has_error() Peter Xu
2023-06-28 21:49 ` [PATCH 3/7] migration: Refactor error handling in source return path Peter Xu
2023-06-28 22:51   ` Fabiano Rosas
2023-06-28 21:49 ` [PATCH 4/7] migration: Deliver return path file error to migrate state too Peter Xu
2023-06-28 22:52   ` Fabiano Rosas
2023-06-28 21:50 ` Peter Xu [this message]
2023-06-28 23:01   ` [PATCH 5/7] migration: Display error in query-migrate irrelevant of status Fabiano Rosas
2023-06-29 19:56     ` Peter Xu
2023-06-28 21:50 ` [PATCH 6/7] qemufile: Always return a verbose error Peter Xu
2023-06-28 21:50 ` [PATCH 7/7] migration: Provide explicit error message for file shutdowns Peter Xu

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=20230628215002.73546-6-peterx@redhat.com \
    --to=peterx@redhat.com \
    --cc=farosas@suse.de \
    --cc=lsoaresp@redhat.com \
    --cc=lukasstraub2@web.de \
    --cc=qemu-devel@nongnu.org \
    --cc=quintela@redhat.com \
    /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).