* Juan Quintela (quint...@redhat.com) wrote: > This allows us to store the current state to send it through migration.
Why store the runstate as a string? The later code then ends up doing string compares and things - why not just use the enum value? Dave > Signed-off-by: Juan Quintela <quint...@redhat.com> > --- > include/sysemu/sysemu.h | 1 + > vl.c | 10 ++++++++++ > 2 files changed, 11 insertions(+) > > diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h > index d8539fd..ae217da 100644 > --- a/include/sysemu/sysemu.h > +++ b/include/sysemu/sysemu.h > @@ -28,6 +28,7 @@ bool runstate_check(RunState state); > void runstate_set(RunState new_state); > int runstate_is_running(void); > bool runstate_needs_reset(void); > +int runstate_store(char *str, int size); > typedef struct vm_change_state_entry VMChangeStateEntry; > typedef void VMChangeStateHandler(void *opaque, int running, RunState state); > > diff --git a/vl.c b/vl.c > index 964d634..ce8e28b 100644 > --- a/vl.c > +++ b/vl.c > @@ -677,6 +677,16 @@ bool runstate_check(RunState state) > return current_run_state == state; > } > > +int runstate_store(char *str, int size) > +{ > + const char *state = RunState_lookup[current_run_state]; > + > + if (strlen(state)+1 > size) > + return -1; > + strncpy(str, state, strlen(state)+1); > + return 0; > +} > + > static void runstate_init(void) > { > const RunStateTransition *p; > -- > 2.1.0 > > -- Dr. David Alan Gilbert / dgilb...@redhat.com / Manchester, UK