On Fri, 03/13 16:58, Ting Wang wrote: > Make "info iothreads" available on the HMP monitor. > > The results are as follows: > id1: thread_id=thread_id1 > id2: thread_id=thread_id2 > > Signed-off-by: Ting Wang <kathy.wangt...@huawei.com> > --- > v4: use the PRId64 format specifier macro for the int64_t thread_id > v3: fix comment and the trailing whitespace > v2: add braces for if > --- > hmp-commands.hx | 2 ++ > hmp.c | 22 ++++++++++++++++++++++ > hmp.h | 1 + > monitor.c | 7 +++++++ > 4 files changed, 32 insertions(+) > > diff --git a/hmp-commands.hx b/hmp-commands.hx > index d5022d8..67d76ed 100644 > --- a/hmp-commands.hx > +++ b/hmp-commands.hx > @@ -1746,6 +1746,8 @@ show roms > show the TPM device > @item info memory-devices > show the memory devices > +@item info iothreads > +show iothreads > @end table > ETEXI > > diff --git a/hmp.c b/hmp.c > index 71c28bc..445a8ad 100644 > --- a/hmp.c > +++ b/hmp.c > @@ -821,6 +821,28 @@ void hmp_info_tpm(Monitor *mon, const QDict *qdict) > qapi_free_TPMInfoList(info_list); > } > > +void hmp_info_iothreads(Monitor *mon, const QDict *qdict) > +{ > + IOThreadInfoList *head = NULL, *elem = NULL; > + > + head = qmp_query_iothreads(NULL); > + if (!head) { > + monitor_printf(mon, "No iothread has been added\n"); > + return; > + } > + > + elem = head; > + while (elem) { > + if (elem->value) { > + monitor_printf(mon, "%s: thread_id=%" PRId64 "\n", > elem->value->id, > + elem->value->thread_id); > + } > + elem = elem->next; > + } > + > + qapi_free_IOThreadInfoList(head); > +} > + > void hmp_quit(Monitor *mon, const QDict *qdict) > { > monitor_suspend(mon); > diff --git a/hmp.h b/hmp.h > index 81177b2..d99090e 100644 > --- a/hmp.h > +++ b/hmp.h > @@ -38,6 +38,7 @@ void hmp_info_balloon(Monitor *mon, const QDict *qdict); > void hmp_info_pci(Monitor *mon, const QDict *qdict); > void hmp_info_block_jobs(Monitor *mon, const QDict *qdict); > void hmp_info_tpm(Monitor *mon, const QDict *qdict); > +void hmp_info_iothreads(Monitor *mon, const QDict *qdict); > void hmp_quit(Monitor *mon, const QDict *qdict); > void hmp_stop(Monitor *mon, const QDict *qdict); > void hmp_system_reset(Monitor *mon, const QDict *qdict); > diff --git a/monitor.c b/monitor.c > index c86a89e..076a306 100644 > --- a/monitor.c > +++ b/monitor.c > @@ -2924,6 +2924,13 @@ static mon_cmd_t info_cmds[] = { > .mhandler.cmd = hmp_info_memory_devices, > }, > { > + .name = "iothreads", > + .args_type = "", > + .params = "", > + .help = "show iothreads", > + .mhandler.cmd = hmp_info_iothreads, > + }, > + { > .name = NULL, > }, > }; > -- > 1.8.5
Looks good, thanks! Reviewed-by: Fam Zheng <f...@redhat.com>