Migration errors & cleanup (the integrated version)
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v5 Latest5 of 37 patches 0 repliesNew
- v436 patches 27 repliesSuperseded
- v211 patches 7 repliesSuperseded
Earlier versions · 1
| Version | Posted | Patches | Replies | Status |
|---|---|---|---|---|
| v1 | 7 patches | 5 replies | Superseded |
Changes in v5 from the cover letter
- addressed review comments:
* Amit
- move "return real error code" after has_error has got a negative value (i.e. from patch 3 to patch 11)
* Kevin
- return -errno, no errno.
* Orit
- return errno instead of EINVAL
- once there, introduce some comments (more needed)
- Make sure that *save_live() return negative on error, and adjust all callers.
- make migration_state enum anonymous (Anthony)
5 of 37 patches are in this archive. The cover letter announces 37.
Patches in v5 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 5/37 | migration: If there is one error, it makes no sense to continuebuffered_file.c | +9 | 0 replies | |
| 10/37 | migration: change has_error to contain errno valuesarch_init.c block-migration.c buffered_file.c +3 more | +15 | 0 replies | |
| 14/37 | migration: use qemu_file_get_error() return value when possiblearch_init.c block-migration.c buffered_file.c +1 more | +24 | 0 replies | |
| 15/37 | migration: make *save_live return errorsarch_init.c block-migration.c savevm.c | +29 | 0 replies | |
| 23/37 | migration: Introduce MIG_STATE_SETUPmigration.c migration.h | +12 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v5 yet.
Cover letter [Qemu-devel] [PATCH v5 00/37] Migration errors & cleanup (the integrated version)
Hi
v5:
- addressed review comments:
* Amit
- move "return real error code" after has_error has got a negative value (i.e. from patch 3 to patch 11)
* Kevin
- return -errno, no errno.
* Orit
- return errno instead of EINVAL
- once there, introduce some comments (more needed)
- Make sure that *save_live() return negative on error, and adjust all callers.
- make migration_state enum anonymous (Anthony)
v4:
- rebase on top of new qemu and new migration-errors series
- integrate back erros & cleanup series
- s/MIG_STATE_NONE/MIG_STATE_SETUP/ (Orit suggestion)
- s/migrate_create_state/migrate_new/ (Anthony suggestion)
- Add migrate_get_current() accessor.
- make has_error contain the errno instead of a bool
- rename qemu_file_has_error() -> qemu_file_get_error()
- rename has_error field into last_error
- migration_state_notifiers now pass MigrationState pointer
v3:
this patch applies on top of my previous "migration error" patches. All error handling has been moved to that series, except for "propagate error correctly", without this refactoring, it is quite complicated to apply it.
Please, review.
Later, Juan.
v3:
- more checkpatch.pl happines
- split error handling in a previous series
- make Anthony happy. current_migration is still a pointer, but points to a static variable. We can change current_migration when we integrate kemari.
v2:
- make Jan^Wcheckpatch.pl happy
- Yoshiaki Tamura suggestions:
- include its two patches to clean things
- MAX_THROTTLE define
- migration_state enum
- I removed spurious differences between migration-{tcp,unix}
- better error propagation, after this patch:
migrate -d "tcp:name_don_exist:port"
migrate -d "tcp:name:port_dont_exist"
migrate -d "exec: prog_dont_exist"
migrate -d "exec: gzip > /path/dont/exist"
fail as expected. Last two used to enter an infinite loop.
The fixes part should be backported to 0.14, waiting for the review to do that.
Later, Juan.
v1:
This series:
- Fold MigrationState into FdMigrationState (and then rename)
- Factorize migration statec creation in a single place
- Make use of MIG_STATE_*, setup through helpers and make them local
- remove relase & cancel callbacks (where used only one in same file than defined)
- get_status() is no more, just access directly to .state
- current_migration use cleanup, and make variable static
- max_throotle is gone, now inside current_migration
- change get_migration_status() to migration_has_finished() and actualize single user.
Please review.
Later, Juan.
Juan Quintela (36):
ds1225y: Use stdio instead of QEMUFile
migration: simplify state assignmente
migration: Check that migration is active before cancel it
migration: If there is one error, it makes no sense to continue
buffered_file: Use right "opaque"
buffered_file: reuse QEMUFile has_error field
migration: don't "write" when migration is not active
migration: set error if select return one error
migration: change has_error to contain errno values
migration: return real error code
migration: rename qemu_file_has_error to qemu_file_get_error
savevm: Rename has_error to last_error field
migration: use qemu_file_get_error() return value when possible
migration: make *save_live return errors
migration: Make *start_outgoing_migration return FdMigrationState
migration: Use FdMigrationState instead of MigrationState when
possible
migration: Fold MigrationState into FdMigrationState
migration: Rename FdMigrationState MigrationState
migration: Refactor MigrationState creation
migration: Make all posible migration functions static
migration: move migrate_new to do_migrate
migration: Introduce MIG_STATE_SETUP
migration: Refactor and simplify error checking in
migrate_fd_put_ready
migration: Introduce migrate_fd_completed() for consistency
migration: Our release callback was just free
migration: Remove get_status() accessor
migration: Remove migration cancel() callback
migration: Move exported functions to the end of the file
migration: create accessor for current_migration
migration: Use bandwidth_limit directly
migration: Pass MigrationState in migration notifiers
migration: Export a function that tells if the migration has finished
correctly
migration: Make state definitions local
migration: Don't use callback on file defining it
migration: propagate error correctly
migration: make migration-{tcp,unix} consistent
Yoshiaki Tamura (1):
migration: add error handling to migrate_fd_put_notify().
arch_init.c | 17 ++- block-migration.c | 35 +++-- buffered_file.c | 44 ++++-- hw/ds1225y.c | 28 ++-- hw/hw.h | 4 +- migration-exec.c | 39 +---- migration-fd.c | 42 +---- migration-tcp.c | 76 ++++------ migration-unix.c | 113 ++++++--------- migration.c | 439 +++++++++++++++++++++++++++-------------------------- migration.h | 85 ++--------- savevm.c | 78 ++++++---- ui/spice-core.c | 4 +- 13 files changed, 456 insertions(+), 548 deletions(-)
Signature · 1 line
1.7.6.4