[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 3/9] runstate: Add runstate store
From: |
Juan Quintela |
Subject: |
Re: [Qemu-devel] [PATCH 3/9] runstate: Add runstate store |
Date: |
Wed, 17 Jun 2015 02:55:42 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
"Denis V. Lunev" <address@hidden> wrote:
> On 14/05/15 19:28, Juan Quintela wrote:
>> This allows us to store the current state to send it through migration.
>>
>> Signed-off-by: Juan Quintela <address@hidden>
>> ---
>> include/sysemu/sysemu.h | 1 +
>> vl.c | 11 +++++++++++
>> 2 files changed, 12 insertions(+)
>>
>> diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h
>> index 8a52934..c1a403e 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 15bccc4..7dca13f 100644
>> --- a/vl.c
>> +++ b/vl.c
>> @@ -609,6 +609,17 @@ 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;
>>
>
> minor. why to call strlen() twice?
>
> if you have the length in hand it would be better to call
> memcpy to copy data.
Done, thanks.