This is a small series that reworks error handling of postcopy return path
threads.
We used to contain a bunch of error_report(), converting them into
error_setg() properly and deliver any of those errors to migration generic
error reports (via migrate_set_error()). Then these errors can also be
observed in query-migrate after postcopy is paused.
Dropped the return-path specific error reporting: mark_source_rp_bad(),
because it's a duplication if we can always use migrate_set_error().
Please have a look, thanks.
Peter Xu (7):
migration: Let migrate_set_error() take ownership
migration: Introduce migrate_has_error()
migration: Refactor error handling in source return path
migration: Deliver return path file error to migrate state too
migration: Display error in query-migrate irrelevant of status
qemufile: Always return a verbose error
migration: Provide explicit error message for file shutdowns
migration/migration.h | 8 +-
migration/ram.h | 5 +-
migration/channel.c | 1 -
migration/migration.c | 168 +++++++++++++++++++++++----------------
migration/multifd.c | 10 +--
migration/postcopy-ram.c | 1 -
migration/qemu-file.c | 20 ++++-
migration/ram.c | 42 +++++-----
migration/trace-events | 2 +-
9 files changed, 147 insertions(+), 110 deletions(-)
--
2.41.0