qemu-block
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v3 6/7] qapi: Use QAPI_LIST_APPEND in trivial cases


From: Eric Blake
Subject: Re: [PATCH v3 6/7] qapi: Use QAPI_LIST_APPEND in trivial cases
Date: Wed, 13 Jan 2021 08:10:21 -0600
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.6.0

On 12/24/20 3:56 AM, Vladimir Sementsov-Ogievskiy wrote:
> 24.12.2020 01:11, Eric Blake wrote:
>> The easiest spots to use QAPI_LIST_APPEND are where we already have an
>> obvious pointer to the tail of a list.  While at it, consistently use
>> the variable name 'tail' for that purpose.
>>
>> Signed-off-by: Eric Blake <eblake@redhat.com>
>> ---
> 
> [..]
> 
>> --- a/monitor/qmp-cmds-control.c
>> +++ b/monitor/qmp-cmds-control.c
>> @@ -104,17 +104,16 @@ VersionInfo *qmp_query_version(Error **errp)
>>
>>   static void query_commands_cb(const QmpCommand *cmd, void *opaque)
>>   {
>> -    CommandInfoList *info, **list = opaque;
>> +    CommandInfo *info;
>> +    CommandInfoList **tail = opaque;
>>
>>       if (!cmd->enabled) {
>>           return;
>>       }
>>
>>       info = g_malloc0(sizeof(*info));
>> -    info->value = g_malloc0(sizeof(*info->value));
>> -    info->value->name = g_strdup(cmd->name);
>> -    info->next = *list;
>> -    *list = info;
>> +    info->name = g_strdup(cmd->name);
>> +    QAPI_LIST_APPEND(tail, info);
> 
> Original logic is prepend in this hunk.
> 

Good catch; looks like it should be folded in with the remainder of
patch 4/7 on the respin.

> Without this hunk:
> Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
> 
>>   }
>>
>>   CommandInfoList *qmp_query_commands(Error **errp)
> 
> [..]
> 
>> --- a/target/i386/cpu.c
>> +++ b/target/i386/cpu.c
>> @@ -4817,20 +4817,17 @@ static void x86_cpu_filter_features(X86CPU
>> *cpu, bool verbose);
>>
>>   /* Build a list with the name of all features on a feature word
>> array */
>>   static void x86_cpu_list_feature_names(FeatureWordArray features,
>> -                                       strList **feat_names)
>> +                                       strList **tail)
>>   {
>>       FeatureWord w;
>> -    strList **next = feat_names;
>>
>>       for (w = 0; w < FEATURE_WORDS; w++) {
>>           uint64_t filtered = features[w];
>>           int i;
>>           for (i = 0; i < 64; i++) {
>>               if (filtered & (1ULL << i)) {
>> -                strList *new = g_new0(strList, 1);
>> -                new->value = g_strdup(x86_cpu_feature_name(w, i));
>> -                *next = new;
>> -                next = &new->next;
>> +                QAPI_LIST_APPEND(tail,
>> +                                 g_strdup(x86_cpu_feature_name(w, i)));
> 
> actually, fit in one line...
> 
>>               }
>>           }
>>       }
> 
> [..]
> 

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3226
Virtualization:  qemu.org | libvirt.org




reply via email to

[Prev in Thread] Current Thread [Next in Thread]