qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v4] Add HMP command "info memory-devices"


From: Markus Armbruster
Subject: Re: [Qemu-devel] [PATCH v4] Add HMP command "info memory-devices"
Date: Mon, 22 Sep 2014 09:59:06 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux)

zhugh <address@hidden> writes:

> On Fri, 2014-09-19 at 11:34 -0400, Luiz Capitulino wrote:
>> On Fri, 19 Sep 2014 15:30:19 +0200
>> Igor Mammedov <address@hidden> wrote:
>> 
>> > On Thu, 18 Sep 2014 16:09:32 +0800
>> > zhugh <address@hidden> wrote:
>> > 
>> > > Hi,
>> > > 
>> > > Could anyone help to review this patch?
>> > > If there was no problem, could help to merge it?
>> > > 
>> > > thanks!
>> > > zhu
>> > > 
>> > > On Mon, 2014-09-15 at 19:31 +0800, Zhu Guihua wrote:
>> > > > Provides HMP equivalent of QMP query-memory-devices command.
>> > > > 
>> > > > Signed-off-by: Zhu Guihua <address@hidden>
[...]
>> > > > diff --git a/hmp.c b/hmp.c
>> > > > index 40a90da..feefeb4 100644
>> > > > --- a/hmp.c
>> > > > +++ b/hmp.c
>> > > > @@ -1718,3 +1718,41 @@ void hmp_info_memdev(Monitor *mon, const QDict 
>> > > > *qdict)
>> > > >  
>> > > >      qapi_free_MemdevList(memdev_list);
>> > > >  }
>> > > > +
>> > > > +void hmp_info_memory_devices(Monitor *mon, const QDict *qdict)
>> > > > +{
>> > > > +    Error *err = NULL;
>> > > > +    MemoryDeviceInfoList *info_list = qmp_query_memory_devices(&err);
>> > > > +    MemoryDeviceInfoList *info;
>> > > > +    MemoryDeviceInfo *value;
>> > > > +    PCDIMMDeviceInfo *di;
>> > > > +
>> > > > +    for (info = info_list; info; info = info->next) {
>> > > > +        value = info->value;
>> > > > +
>> > > > +        if (value) {
>> > > > +            switch (value->kind) {
>> > > > +            case MEMORY_DEVICE_INFO_KIND_DIMM:
>> > > > +                di = value->dimm;
>> > > > +
>> > > > +                monitor_printf(mon, "Memory device [%s]: %s\n",
>> > > > +                               
>> > > > MemoryDeviceInfoKind_lookup[value->kind],
>> > > > +                               di->id);
>> > 'id' might be null, here is what user will see:
>> > 
>> > Memory device [dimm]: (null)
>> > 
>> > I'd suggest to replace (null) with "" as it is done elsewhere.
>> 
>> Is the fix below what you're looking for? If it is I can apply it myself:
>
> I am sorry, I did not test this fix in my code last time. But your fix
> would print nothing when the id was null.

Printing nothing when there's no ID has a certain logic to it :)

> So I think the fix would like the below, could you apply it?
> Thanks!
>
> diff --git a/hmp.c b/hmp.c
> index feefeb4..39a6490 100644
> --- a/hmp.c
> +++ b/hmp.c
> @@ -1737,7 +1737,7 @@ void hmp_info_memory_devices(Monitor *mon, const
> QDict *qdict)
>  
>                 monitor_printf(mon, "Memory device [%s]: %s\n",
>                                MemoryDeviceInfoKind_lookup[value->kind],
> -                              di->id);
> +                              di->id ? di->id : "\"\"");
>                 monitor_printf(mon, "  addr: 0x%" PRIx64 "\n",di->addr);
>                 monitor_printf(mon, "  slot: %" PRId64 "\n", di->slot);
>                 monitor_printf(mon, "  node: %" PRId64 "\n", di->node);

I'd stick to printing nothing.



reply via email to

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