[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 1/2] migration: add savevm_state_handler_remove()
From: |
Scott Cheloha |
Subject: |
[PATCH v2 1/2] migration: add savevm_state_handler_remove() |
Date: |
Thu, 17 Oct 2019 15:59:52 -0500 |
Create a function to abstract common logic needed when removing a
SaveStateEntry element from the savevm_state.handlers queue.
For now we just remove the element. Soon it will involve additional
cleanup.
Signed-off-by: Scott Cheloha <address@hidden>
---
migration/savevm.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/migration/savevm.c b/migration/savevm.c
index 8d95e261f6..b2e3b7222a 100644
--- a/migration/savevm.c
+++ b/migration/savevm.c
@@ -725,6 +725,11 @@ static void savevm_state_handler_insert(SaveStateEntry
*nse)
}
}
+static void savevm_state_handler_remove(SaveStateEntry *se)
+{
+ QTAILQ_REMOVE(&savevm_state.handlers, se, entry);
+}
+
/* TODO: Individual devices generally have very little idea about the rest
of the system, so instance_id should be removed/replaced.
Meanwhile pass -1 as instance_id if you do not already have a clearly
@@ -777,7 +782,7 @@ void unregister_savevm(DeviceState *dev, const char *idstr,
void *opaque)
QTAILQ_FOREACH_SAFE(se, &savevm_state.handlers, entry, new_se) {
if (strcmp(se->idstr, id) == 0 && se->opaque == opaque) {
- QTAILQ_REMOVE(&savevm_state.handlers, se, entry);
+ savevm_state_handler_remove(se);
g_free(se->compat);
g_free(se);
}
@@ -841,7 +846,7 @@ void vmstate_unregister(DeviceState *dev, const
VMStateDescription *vmsd,
QTAILQ_FOREACH_SAFE(se, &savevm_state.handlers, entry, new_se) {
if (se->vmsd == vmsd && se->opaque == opaque) {
- QTAILQ_REMOVE(&savevm_state.handlers, se, entry);
+ savevm_state_handler_remove(se);
g_free(se->compat);
g_free(se);
}
--
2.23.0
- [PATCH v2 0/2] migration: faster savevm_state_handler_insert(), Scott Cheloha, 2019/10/17
- [PATCH v2 1/2] migration: add savevm_state_handler_remove(),
Scott Cheloha <=
- [PATCH v2 2/2] migration: savevm_state_handler_insert: constant-time element insertion, Scott Cheloha, 2019/10/17
- Re: [PATCH v2 2/2] migration: savevm_state_handler_insert: constant-time element insertion, Dr. David Alan Gilbert, 2019/10/18
- Re: [PATCH v2 2/2] migration: savevm_state_handler_insert: constant-time element insertion, Laurent Vivier, 2019/10/18
- Re: [PATCH v2 2/2] migration: savevm_state_handler_insert: constant-time element insertion, Dr. David Alan Gilbert, 2019/10/18
- Re: [PATCH v2 2/2] migration: savevm_state_handler_insert: constant-time element insertion, Michael Roth, 2019/10/18
- Re: [PATCH v2 2/2] migration: savevm_state_handler_insert: constant-time element insertion, Dr. David Alan Gilbert, 2019/10/18
- Re: [PATCH v2 2/2] migration: savevm_state_handler_insert: constant-time element insertion, David Gibson, 2019/10/21
- Re: [PATCH v2 2/2] migration: savevm_state_handler_insert: constant-time element insertion, David Gibson, 2019/10/19
- Re: [PATCH v2 2/2] migration: savevm_state_handler_insert: constant-time element insertion, Dr. David Alan Gilbert, 2019/10/21