[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 23/34] migration: migration_is_device
From: |
peterx |
Subject: |
[PULL 23/34] migration: migration_is_device |
Date: |
Mon, 11 Mar 2024 17:59:14 -0400 |
From: Steve Sistare <steven.sistare@oracle.com>
Define and export migration_is_device to eliminate a dependency
on MigrationState.
Signed-off-by: Steve Sistare <steven.sistare@oracle.com>
Link:
1710179338-294359-8-git-send-email-steven.sistare@oracle.com">https://lore.kernel.org/r/1710179338-294359-8-git-send-email-steven.sistare@oracle.com
Signed-off-by: Peter Xu <peterx@redhat.com>
---
include/migration/misc.h | 1 +
hw/vfio/common.c | 4 +---
migration/migration.c | 7 +++++++
3 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/include/migration/misc.h b/include/migration/misc.h
index c4b5416357..28cfaed2c7 100644
--- a/include/migration/misc.h
+++ b/include/migration/misc.h
@@ -61,6 +61,7 @@ void migration_object_init(void);
void migration_shutdown(void);
bool migration_is_idle(void);
bool migration_is_active(void);
+bool migration_is_device(void);
bool migration_thread_is_self(void);
bool migration_is_setup_or_active(void);
bool migrate_mode_is_cpr(MigrationState *);
diff --git a/hw/vfio/common.c b/hw/vfio/common.c
index 2dbbf62e15..de010680ff 100644
--- a/hw/vfio/common.c
+++ b/hw/vfio/common.c
@@ -180,10 +180,8 @@ bool vfio_device_state_is_precopy(VFIODevice *vbasedev)
static bool vfio_devices_all_dirty_tracking(VFIOContainerBase *bcontainer)
{
VFIODevice *vbasedev;
- MigrationState *ms = migrate_get_current();
- if (!migration_is_active() &&
- ms->state != MIGRATION_STATUS_DEVICE) {
+ if (!migration_is_active() && !migration_is_device()) {
return false;
}
diff --git a/migration/migration.c b/migration/migration.c
index afe72af0b1..db1e627848 100644
--- a/migration/migration.c
+++ b/migration/migration.c
@@ -1647,6 +1647,13 @@ bool migration_is_active(void)
s->state == MIGRATION_STATUS_POSTCOPY_ACTIVE);
}
+bool migration_is_device(void)
+{
+ MigrationState *s = current_migration;
+
+ return s->state == MIGRATION_STATUS_DEVICE;
+}
+
bool migration_thread_is_self(void)
{
MigrationState *s = current_migration;
--
2.44.0
- [PULL 14/34] physmem: Fix wrong address in large address_space_read/write_cached_slow(), (continued)
- [PULL 14/34] physmem: Fix wrong address in large address_space_read/write_cached_slow(), peterx, 2024/03/11
- [PULL 27/34] migration: purge MigrationState from public interface, peterx, 2024/03/11
- [PULL 29/34] migration/multifd: Allow clearing of the file_bmap from multifd, peterx, 2024/03/11
- [PULL 34/34] migration/multifd: Add new migration test cases for legacy zero page checking., peterx, 2024/03/11
- [PULL 18/34] migration: export migration_is_setup_or_active, peterx, 2024/03/11
- [PULL 17/34] migration: remove migration.h references, peterx, 2024/03/11
- [PULL 21/34] migration: export vcpu_dirty_limit_period, peterx, 2024/03/11
- [PULL 15/34] migration: Fix format in error message, peterx, 2024/03/11
- [PULL 19/34] migration: export migration_is_active, peterx, 2024/03/11
- [PULL 20/34] migration: export migration_is_running, peterx, 2024/03/11
- [PULL 23/34] migration: migration_is_device,
peterx <=
- [PULL 22/34] migration: migration_thread_is_self, peterx, 2024/03/11
- [PULL 25/34] migration: privatize colo interfaces, peterx, 2024/03/11
- [PULL 26/34] migration: delete unused accessors, peterx, 2024/03/11
- [PULL 28/34] migration/multifd: Allow zero pages in file migration, peterx, 2024/03/11
- [PULL 24/34] migration: migration_file_set_error, peterx, 2024/03/11
- [PULL 30/34] migration/multifd: Add new migration option zero-page-detection., peterx, 2024/03/11
- [PULL 32/34] migration/multifd: Implement ram_save_target_page_multifd to handle multifd version of MigrationOps::ram_save_target_page., peterx, 2024/03/11
- [PULL 33/34] migration/multifd: Enable multifd zero page checking by default., peterx, 2024/03/11
- [PULL 31/34] migration/multifd: Implement zero page transmission on the multifd thread., peterx, 2024/03/11
- Re: [PULL 00/34] Migration 20240311 patches, Peter Maydell, 2024/03/12