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: Igor Mammedov
Subject: Re: [Qemu-devel] [PATCH v4] Add HMP command "info memory-devices"
Date: Mon, 22 Sep 2014 10:05:56 +0200

On Mon, 22 Sep 2014 09:59:06 +0200
Markus Armbruster <address@hidden> wrote:

> 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 :)

When I do 'info qtree' it displays empty IDs with as empty ""
I think we should be consistent and apply above correction.

> 
> > 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]