Message ID | 20240620152220.2192768-10-alex.bennee@linaro.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | maintainer updates pre-PR (gdbstub, plugins, time control) | expand |
On 20/06/2024 17.22, Alex Bennée wrote: > If the plugin in controlling time there is some state that might be > missing from the plugin tracking it. Migration is unlikely to work in > this case so lets put a migration blocker in to let the user know if > they try. > > Signed-off-by: Alex Bennée <alex.bennee@linaro.org> > Suggested-by: "Dr. David Alan Gilbert" <dave@treblig.org> > --- > plugins/api.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/plugins/api.c b/plugins/api.c > index 4431a0ea7e..c4239153af 100644 > --- a/plugins/api.c > +++ b/plugins/api.c > @@ -47,6 +47,8 @@ > #include "disas/disas.h" > #include "plugin.h" > #ifndef CONFIG_USER_ONLY > +#include "qapi/error.h" > +#include "migration/blocker.h" > #include "exec/ram_addr.h" > #include "qemu/plugin-memory.h" > #include "hw/boards.h" > @@ -589,11 +591,17 @@ uint64_t qemu_plugin_u64_sum(qemu_plugin_u64 entry) > * Time control > */ > static bool has_control; > +Error *migration_blocker; > > const void *qemu_plugin_request_time_control(void) > { > if (!has_control) { > has_control = true; > +#ifdef CONFIG_SOFTMMU > + error_setg(&migration_blocker, > + "TCG plugin time control does not support migration"); > + migrate_add_blocker(&migration_blocker, NULL); > +#endif > return &has_control; > } > return NULL; Reviewed-by: Thomas Huth <thuth@redhat.com>
On 6/20/24 08:22, Alex Bennée wrote: > If the plugin in controlling time there is some state that might be > missing from the plugin tracking it. Migration is unlikely to work in > this case so lets put a migration blocker in to let the user know if > they try. > > Signed-off-by: Alex Bennée <alex.bennee@linaro.org> > Suggested-by: "Dr. David Alan Gilbert" <dave@treblig.org> > --- > plugins/api.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/plugins/api.c b/plugins/api.c > index 4431a0ea7e..c4239153af 100644 > --- a/plugins/api.c > +++ b/plugins/api.c > @@ -47,6 +47,8 @@ > #include "disas/disas.h" > #include "plugin.h" > #ifndef CONFIG_USER_ONLY > +#include "qapi/error.h" > +#include "migration/blocker.h" > #include "exec/ram_addr.h" > #include "qemu/plugin-memory.h" > #include "hw/boards.h" > @@ -589,11 +591,17 @@ uint64_t qemu_plugin_u64_sum(qemu_plugin_u64 entry) > * Time control > */ > static bool has_control; > +Error *migration_blocker; static. With that, Reviewed-by: Richard Henderson <richard.henderson@linaro.org> r~
Reviewed-by: Alwalid Salama <quic_asalama@qualcomm.com> On 6/20/2024 5:22 PM, Alex Bennée wrote: > If the plugin in controlling time there is some state that might be > missing from the plugin tracking it. Migration is unlikely to work in > this case so lets put a migration blocker in to let the user know if > they try. > > Signed-off-by: Alex Bennée <alex.bennee@linaro.org> > Suggested-by: "Dr. David Alan Gilbert" <dave@treblig.org> > --- > plugins/api.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/plugins/api.c b/plugins/api.c > index 4431a0ea7e..c4239153af 100644 > --- a/plugins/api.c > +++ b/plugins/api.c > @@ -47,6 +47,8 @@ > #include "disas/disas.h" > #include "plugin.h" > #ifndef CONFIG_USER_ONLY > +#include "qapi/error.h" > +#include "migration/blocker.h" > #include "exec/ram_addr.h" > #include "qemu/plugin-memory.h" > #include "hw/boards.h" > @@ -589,11 +591,17 @@ uint64_t qemu_plugin_u64_sum(qemu_plugin_u64 entry) > * Time control > */ > static bool has_control; > +Error *migration_blocker; > > const void *qemu_plugin_request_time_control(void) > { > if (!has_control) { > has_control = true; > +#ifdef CONFIG_SOFTMMU > + error_setg(&migration_blocker, > + "TCG plugin time control does not support migration"); > + migrate_add_blocker(&migration_blocker, NULL); > +#endif > return &has_control; > } > return NULL;
diff --git a/plugins/api.c b/plugins/api.c index 4431a0ea7e..c4239153af 100644 --- a/plugins/api.c +++ b/plugins/api.c @@ -47,6 +47,8 @@ #include "disas/disas.h" #include "plugin.h" #ifndef CONFIG_USER_ONLY +#include "qapi/error.h" +#include "migration/blocker.h" #include "exec/ram_addr.h" #include "qemu/plugin-memory.h" #include "hw/boards.h" @@ -589,11 +591,17 @@ uint64_t qemu_plugin_u64_sum(qemu_plugin_u64 entry) * Time control */ static bool has_control; +Error *migration_blocker; const void *qemu_plugin_request_time_control(void) { if (!has_control) { has_control = true; +#ifdef CONFIG_SOFTMMU + error_setg(&migration_blocker, + "TCG plugin time control does not support migration"); + migrate_add_blocker(&migration_blocker, NULL); +#endif return &has_control; } return NULL;
If the plugin in controlling time there is some state that might be missing from the plugin tracking it. Migration is unlikely to work in this case so lets put a migration blocker in to let the user know if they try. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Suggested-by: "Dr. David Alan Gilbert" <dave@treblig.org> --- plugins/api.c | 8 ++++++++ 1 file changed, 8 insertions(+)