On Mon, 22 Sep 2014 11:29:00 +0200 Markus Armbruster <arm...@redhat.com> wrote:
> Igor Mammedov <imamm...@redhat.com> writes: > > > On Mon, 22 Sep 2014 09:59:06 +0200 > > Markus Armbruster <arm...@redhat.com> wrote: > > > >> zhugh <zhugh.f...@cn.fujitsu.com> writes: > >> > >> > On Fri, 2014-09-19 at 11:34 -0400, Luiz Capitulino wrote: > >> >> On Fri, 19 Sep 2014 15:30:19 +0200 > >> >> Igor Mammedov <imamm...@redhat.com> wrote: > >> >> > >> >> > On Thu, 18 Sep 2014 16:09:32 +0800 > >> >> > zhugh <zhugh.f...@cn.fujitsu.com> 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 <zhugh.f...@cn.fujitsu.com> > >> [...] > >> >> > > > 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. > > If you want consistency with "info qtree", you should enclose non-null > ID in double quotes. zhugh, at this point is better to respin the patch.