[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 2/7] runstate: Add runstate store
From: |
Juan Quintela |
Subject: |
Re: [Qemu-devel] [PATCH 2/7] runstate: Add runstate store |
Date: |
Mon, 20 Oct 2014 12:52:34 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) |
"Dr. David Alan Gilbert" <address@hidden> wrote:
> * Juan Quintela (address@hidden) 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?
How do you know that it has the same values both sides? As far as I can
see, all interaction with the outside is done with strings (i.e. QMP).
But it is easier for me if I can sent the numeric value.
Libvirt folks?
Luiz?
What should I do?
Later, Juan.
>
> Dave
>
>> Signed-off-by: Juan Quintela <address@hidden>
>> ---
>> 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 / address@hidden / Manchester, UK
[Qemu-devel] [PATCH 1/7] migration: Create optional sections, Juan Quintela, 2014/10/15
[Qemu-devel] [PATCH 3/7] runstate: create runstate_index function, Juan Quintela, 2014/10/15
[Qemu-devel] [PATCH 4/7] runstate: migration allows more transitions now, Juan Quintela, 2014/10/15
[Qemu-devel] [PATCH 7/7] vmstate: Create optional sections, Juan Quintela, 2014/10/15