xref: /openbmc/qemu/hmp-commands-info.hx (revision 2fc979cb)
1HXCOMM Use DEFHEADING() to define headings in both help text and rST.
2HXCOMM Text between SRST and ERST is copied to the rST version and
3HXCOMM discarded from C version.
4HXCOMM DEF(command, args, callback, arg_string, help) is used to construct
5HXCOMM monitor info commands
6HXCOMM HXCOMM can be used for comments, discarded from both rST and C.
7HXCOMM
8HXCOMM In this file, generally SRST fragments should have two extra
9HXCOMM spaces of indent, so that the documentation list item for "info foo"
10HXCOMM appears inside the documentation list item for the top level
11HXCOMM "info" documentation entry. The exception is the first SRST
12HXCOMM fragment that defines that top level entry.
13
14SRST
15``info`` *subcommand*
16  Show various information about the system state.
17
18ERST
19
20    {
21        .name       = "version",
22        .args_type  = "",
23        .params     = "",
24        .help       = "show the version of QEMU",
25        .cmd        = hmp_info_version,
26        .flags      = "p",
27    },
28
29SRST
30  ``info version``
31    Show the version of QEMU.
32ERST
33
34    {
35        .name       = "network",
36        .args_type  = "",
37        .params     = "",
38        .help       = "show the network state",
39        .cmd        = hmp_info_network,
40    },
41
42SRST
43  ``info network``
44    Show the network state.
45ERST
46
47    {
48        .name       = "chardev",
49        .args_type  = "",
50        .params     = "",
51        .help       = "show the character devices",
52        .cmd        = hmp_info_chardev,
53        .flags      = "p",
54    },
55
56SRST
57  ``info chardev``
58    Show the character devices.
59ERST
60
61    {
62        .name       = "block",
63        .args_type  = "nodes:-n,verbose:-v,device:B?",
64        .params     = "[-n] [-v] [device]",
65        .help       = "show info of one block device or all block devices "
66                      "(-n: show named nodes; -v: show details)",
67        .cmd        = hmp_info_block,
68    },
69
70SRST
71  ``info block``
72    Show info of one block device or all block devices.
73ERST
74
75    {
76        .name       = "blockstats",
77        .args_type  = "",
78        .params     = "",
79        .help       = "show block device statistics",
80        .cmd        = hmp_info_blockstats,
81    },
82
83SRST
84  ``info blockstats``
85    Show block device statistics.
86ERST
87
88    {
89        .name       = "block-jobs",
90        .args_type  = "",
91        .params     = "",
92        .help       = "show progress of ongoing block device operations",
93        .cmd        = hmp_info_block_jobs,
94    },
95
96SRST
97  ``info block-jobs``
98    Show progress of ongoing block device operations.
99ERST
100
101    {
102        .name       = "registers",
103        .args_type  = "cpustate_all:-a",
104        .params     = "[-a]",
105        .help       = "show the cpu registers (-a: all - show register info for all cpus)",
106        .cmd        = hmp_info_registers,
107    },
108
109SRST
110  ``info registers``
111    Show the cpu registers.
112ERST
113
114#if defined(TARGET_I386)
115    {
116        .name       = "lapic",
117        .args_type  = "apic-id:i?",
118        .params     = "[apic-id]",
119        .help       = "show local apic state (apic-id: local apic to read, default is which of current CPU)",
120
121        .cmd        = hmp_info_local_apic,
122    },
123#endif
124
125SRST
126  ``info lapic``
127    Show local APIC state
128ERST
129
130#if defined(TARGET_I386)
131    {
132        .name       = "ioapic",
133        .args_type  = "",
134        .params     = "",
135        .help       = "show io apic state",
136        .cmd        = hmp_info_io_apic,
137    },
138#endif
139
140SRST
141  ``info ioapic``
142    Show io APIC state
143ERST
144
145    {
146        .name       = "cpus",
147        .args_type  = "",
148        .params     = "",
149        .help       = "show infos for each CPU",
150        .cmd        = hmp_info_cpus,
151    },
152
153SRST
154  ``info cpus``
155    Show infos for each CPU.
156ERST
157
158    {
159        .name       = "history",
160        .args_type  = "",
161        .params     = "",
162        .help       = "show the command line history",
163        .cmd        = hmp_info_history,
164        .flags      = "p",
165    },
166
167SRST
168  ``info history``
169    Show the command line history.
170ERST
171
172    {
173        .name       = "irq",
174        .args_type  = "",
175        .params     = "",
176        .help       = "show the interrupts statistics (if available)",
177        .cmd        = hmp_info_irq,
178    },
179
180SRST
181  ``info irq``
182    Show the interrupts statistics (if available).
183ERST
184
185    {
186        .name       = "pic",
187        .args_type  = "",
188        .params     = "",
189        .help       = "show PIC state",
190        .cmd        = hmp_info_pic,
191    },
192
193SRST
194  ``info pic``
195    Show PIC state.
196ERST
197
198    {
199        .name       = "rdma",
200        .args_type  = "",
201        .params     = "",
202        .help       = "show RDMA state",
203        .cmd        = hmp_info_rdma,
204    },
205
206SRST
207  ``info rdma``
208    Show RDMA state.
209ERST
210
211    {
212        .name       = "pci",
213        .args_type  = "",
214        .params     = "",
215        .help       = "show PCI info",
216        .cmd        = hmp_info_pci,
217    },
218
219SRST
220  ``info pci``
221    Show PCI information.
222ERST
223
224#if defined(TARGET_I386) || defined(TARGET_SH4) || defined(TARGET_SPARC) || \
225    defined(TARGET_PPC) || defined(TARGET_XTENSA) || defined(TARGET_M68K)
226    {
227        .name       = "tlb",
228        .args_type  = "",
229        .params     = "",
230        .help       = "show virtual to physical memory mappings",
231        .cmd        = hmp_info_tlb,
232    },
233#endif
234
235SRST
236  ``info tlb``
237    Show virtual to physical memory mappings.
238ERST
239
240#if defined(TARGET_I386) || defined(TARGET_RISCV)
241    {
242        .name       = "mem",
243        .args_type  = "",
244        .params     = "",
245        .help       = "show the active virtual memory mappings",
246        .cmd        = hmp_info_mem,
247    },
248#endif
249
250SRST
251  ``info mem``
252    Show the active virtual memory mappings.
253ERST
254
255    {
256        .name       = "mtree",
257        .args_type  = "flatview:-f,dispatch_tree:-d,owner:-o",
258        .params     = "[-f][-d][-o]",
259        .help       = "show memory tree (-f: dump flat view for address spaces;"
260                      "-d: dump dispatch tree, valid with -f only);"
261                      "-o: dump region owners/parents",
262        .cmd        = hmp_info_mtree,
263    },
264
265SRST
266  ``info mtree``
267    Show memory tree.
268ERST
269
270#if defined(CONFIG_TCG)
271    {
272        .name       = "jit",
273        .args_type  = "",
274        .params     = "",
275        .help       = "show dynamic compiler info",
276        .cmd        = hmp_info_jit,
277    },
278#endif
279
280SRST
281  ``info jit``
282    Show dynamic compiler info.
283ERST
284
285#if defined(CONFIG_TCG)
286    {
287        .name       = "opcount",
288        .args_type  = "",
289        .params     = "",
290        .help       = "show dynamic compiler opcode counters",
291        .cmd        = hmp_info_opcount,
292    },
293#endif
294
295SRST
296  ``info opcount``
297    Show dynamic compiler opcode counters
298ERST
299
300    {
301        .name       = "sync-profile",
302        .args_type  = "mean:-m,no_coalesce:-n,max:i?",
303        .params     = "[-m] [-n] [max]",
304        .help       = "show synchronization profiling info, up to max entries "
305                      "(default: 10), sorted by total wait time. (-m: sort by "
306                      "mean wait time; -n: do not coalesce objects with the "
307                      "same call site)",
308        .cmd        = hmp_info_sync_profile,
309    },
310
311SRST
312  ``info sync-profile [-m|-n]`` [*max*]
313    Show synchronization profiling info, up to *max* entries (default: 10),
314    sorted by total wait time.
315
316    ``-m``
317      sort by mean wait time
318    ``-n``
319      do not coalesce objects with the same call site
320
321    When different objects that share the same call site are coalesced,
322    the "Object" field shows---enclosed in brackets---the number of objects
323    being coalesced.
324ERST
325
326    {
327        .name       = "kvm",
328        .args_type  = "",
329        .params     = "",
330        .help       = "show KVM information",
331        .cmd        = hmp_info_kvm,
332    },
333
334SRST
335  ``info kvm``
336    Show KVM information.
337ERST
338
339    {
340        .name       = "numa",
341        .args_type  = "",
342        .params     = "",
343        .help       = "show NUMA information",
344        .cmd        = hmp_info_numa,
345    },
346
347SRST
348  ``info numa``
349    Show NUMA information.
350ERST
351
352    {
353        .name       = "usb",
354        .args_type  = "",
355        .params     = "",
356        .help       = "show guest USB devices",
357        .cmd        = hmp_info_usb,
358    },
359
360SRST
361  ``info usb``
362    Show guest USB devices.
363ERST
364
365    {
366        .name       = "usbhost",
367        .args_type  = "",
368        .params     = "",
369        .help       = "show host USB devices",
370        .cmd        = hmp_info_usbhost,
371    },
372
373SRST
374  ``info usbhost``
375    Show host USB devices.
376ERST
377
378    {
379        .name       = "profile",
380        .args_type  = "",
381        .params     = "",
382        .help       = "show profiling information",
383        .cmd        = hmp_info_profile,
384    },
385
386SRST
387  ``info profile``
388    Show profiling information.
389ERST
390
391    {
392        .name       = "capture",
393        .args_type  = "",
394        .params     = "",
395        .help       = "show capture information",
396        .cmd        = hmp_info_capture,
397    },
398
399SRST
400  ``info capture``
401    Show capture information.
402ERST
403
404    {
405        .name       = "snapshots",
406        .args_type  = "",
407        .params     = "",
408        .help       = "show the currently saved VM snapshots",
409        .cmd        = hmp_info_snapshots,
410    },
411
412SRST
413  ``info snapshots``
414    Show the currently saved VM snapshots.
415ERST
416
417    {
418        .name       = "status",
419        .args_type  = "",
420        .params     = "",
421        .help       = "show the current VM status (running|paused)",
422        .cmd        = hmp_info_status,
423        .flags      = "p",
424    },
425
426SRST
427  ``info status``
428    Show the current VM status (running|paused).
429ERST
430
431    {
432        .name       = "mice",
433        .args_type  = "",
434        .params     = "",
435        .help       = "show which guest mouse is receiving events",
436        .cmd        = hmp_info_mice,
437    },
438
439SRST
440  ``info mice``
441    Show which guest mouse is receiving events.
442ERST
443
444#if defined(CONFIG_VNC)
445    {
446        .name       = "vnc",
447        .args_type  = "",
448        .params     = "",
449        .help       = "show the vnc server status",
450        .cmd        = hmp_info_vnc,
451    },
452#endif
453
454SRST
455  ``info vnc``
456    Show the vnc server status.
457ERST
458
459#if defined(CONFIG_SPICE)
460    {
461        .name       = "spice",
462        .args_type  = "",
463        .params     = "",
464        .help       = "show the spice server status",
465        .cmd        = hmp_info_spice,
466    },
467#endif
468
469SRST
470  ``info spice``
471    Show the spice server status.
472ERST
473
474    {
475        .name       = "name",
476        .args_type  = "",
477        .params     = "",
478        .help       = "show the current VM name",
479        .cmd        = hmp_info_name,
480        .flags      = "p",
481    },
482
483SRST
484  ``info name``
485    Show the current VM name.
486ERST
487
488    {
489        .name       = "uuid",
490        .args_type  = "",
491        .params     = "",
492        .help       = "show the current VM UUID",
493        .cmd        = hmp_info_uuid,
494        .flags      = "p",
495    },
496
497SRST
498  ``info uuid``
499    Show the current VM UUID.
500ERST
501
502    {
503        .name       = "cpustats",
504        .args_type  = "",
505        .params     = "",
506        .help       = "show CPU statistics",
507        .cmd        = hmp_info_cpustats,
508    },
509
510SRST
511  ``info cpustats``
512    Show CPU statistics.
513ERST
514
515#if defined(CONFIG_SLIRP)
516    {
517        .name       = "usernet",
518        .args_type  = "",
519        .params     = "",
520        .help       = "show user network stack connection states",
521        .cmd        = hmp_info_usernet,
522    },
523#endif
524
525SRST
526  ``info usernet``
527    Show user network stack connection states.
528ERST
529
530    {
531        .name       = "migrate",
532        .args_type  = "",
533        .params     = "",
534        .help       = "show migration status",
535        .cmd        = hmp_info_migrate,
536    },
537
538SRST
539  ``info migrate``
540    Show migration status.
541ERST
542
543    {
544        .name       = "migrate_capabilities",
545        .args_type  = "",
546        .params     = "",
547        .help       = "show current migration capabilities",
548        .cmd        = hmp_info_migrate_capabilities,
549    },
550
551SRST
552  ``info migrate_capabilities``
553    Show current migration capabilities.
554ERST
555
556    {
557        .name       = "migrate_parameters",
558        .args_type  = "",
559        .params     = "",
560        .help       = "show current migration parameters",
561        .cmd        = hmp_info_migrate_parameters,
562    },
563
564SRST
565  ``info migrate_parameters``
566    Show current migration parameters.
567ERST
568
569    {
570        .name       = "migrate_cache_size",
571        .args_type  = "",
572        .params     = "",
573        .help       = "show current migration xbzrle cache size",
574        .cmd        = hmp_info_migrate_cache_size,
575    },
576
577SRST
578  ``info migrate_cache_size``
579    Show current migration xbzrle cache size.
580ERST
581
582    {
583        .name       = "balloon",
584        .args_type  = "",
585        .params     = "",
586        .help       = "show balloon information",
587        .cmd        = hmp_info_balloon,
588    },
589
590SRST
591  ``info balloon``
592    Show balloon information.
593ERST
594
595    {
596        .name       = "qtree",
597        .args_type  = "",
598        .params     = "",
599        .help       = "show device tree",
600        .cmd        = hmp_info_qtree,
601    },
602
603SRST
604  ``info qtree``
605    Show device tree.
606ERST
607
608    {
609        .name       = "qdm",
610        .args_type  = "",
611        .params     = "",
612        .help       = "show qdev device model list",
613        .cmd        = hmp_info_qdm,
614    },
615
616SRST
617  ``info qdm``
618    Show qdev device model list.
619ERST
620
621    {
622        .name       = "qom-tree",
623        .args_type  = "path:s?",
624        .params     = "[path]",
625        .help       = "show QOM composition tree",
626        .cmd        = hmp_info_qom_tree,
627        .flags      = "p",
628    },
629
630SRST
631  ``info qom-tree``
632    Show QOM composition tree.
633ERST
634
635    {
636        .name       = "roms",
637        .args_type  = "",
638        .params     = "",
639        .help       = "show roms",
640        .cmd        = hmp_info_roms,
641    },
642
643SRST
644  ``info roms``
645    Show roms.
646ERST
647
648    {
649        .name       = "trace-events",
650        .args_type  = "name:s?,vcpu:i?",
651        .params     = "[name] [vcpu]",
652        .help       = "show available trace-events & their state "
653                      "(name: event name pattern; vcpu: vCPU to query, default is any)",
654        .cmd = hmp_info_trace_events,
655        .command_completion = info_trace_events_completion,
656    },
657
658SRST
659  ``info trace-events``
660    Show available trace-events & their state.
661ERST
662
663    {
664        .name       = "tpm",
665        .args_type  = "",
666        .params     = "",
667        .help       = "show the TPM device",
668        .cmd        = hmp_info_tpm,
669    },
670
671SRST
672  ``info tpm``
673    Show the TPM device.
674ERST
675
676    {
677        .name       = "memdev",
678        .args_type  = "",
679        .params     = "",
680        .help       = "show memory backends",
681        .cmd        = hmp_info_memdev,
682        .flags      = "p",
683    },
684
685SRST
686  ``info memdev``
687    Show memory backends
688ERST
689
690    {
691        .name       = "memory-devices",
692        .args_type  = "",
693        .params     = "",
694        .help       = "show memory devices",
695        .cmd        = hmp_info_memory_devices,
696    },
697
698SRST
699  ``info memory-devices``
700    Show memory devices.
701ERST
702
703    {
704        .name       = "iothreads",
705        .args_type  = "",
706        .params     = "",
707        .help       = "show iothreads",
708        .cmd        = hmp_info_iothreads,
709        .flags      = "p",
710    },
711
712SRST
713  ``info iothreads``
714    Show iothread's identifiers.
715ERST
716
717    {
718        .name       = "rocker",
719        .args_type  = "name:s",
720        .params     = "name",
721        .help       = "Show rocker switch",
722        .cmd        = hmp_rocker,
723    },
724
725SRST
726  ``info rocker`` *name*
727    Show rocker switch.
728ERST
729
730    {
731        .name       = "rocker-ports",
732        .args_type  = "name:s",
733        .params     = "name",
734        .help       = "Show rocker ports",
735        .cmd        = hmp_rocker_ports,
736    },
737
738SRST
739  ``info rocker-ports`` *name*-ports
740    Show rocker ports.
741ERST
742
743    {
744        .name       = "rocker-of-dpa-flows",
745        .args_type  = "name:s,tbl_id:i?",
746        .params     = "name [tbl_id]",
747        .help       = "Show rocker OF-DPA flow tables",
748        .cmd        = hmp_rocker_of_dpa_flows,
749    },
750
751SRST
752  ``info rocker-of-dpa-flows`` *name* [*tbl_id*]
753    Show rocker OF-DPA flow tables.
754ERST
755
756    {
757        .name       = "rocker-of-dpa-groups",
758        .args_type  = "name:s,type:i?",
759        .params     = "name [type]",
760        .help       = "Show rocker OF-DPA groups",
761        .cmd        = hmp_rocker_of_dpa_groups,
762    },
763
764SRST
765  ``info rocker-of-dpa-groups`` *name* [*type*]
766    Show rocker OF-DPA groups.
767ERST
768
769#if defined(TARGET_S390X)
770    {
771        .name       = "skeys",
772        .args_type  = "addr:l",
773        .params     = "address",
774        .help       = "Display the value of a storage key",
775        .cmd        = hmp_info_skeys,
776    },
777#endif
778
779SRST
780  ``info skeys`` *address*
781    Display the value of a storage key (s390 only)
782ERST
783
784#if defined(TARGET_S390X)
785    {
786        .name       = "cmma",
787        .args_type  = "addr:l,count:l?",
788        .params     = "address [count]",
789        .help       = "Display the values of the CMMA storage attributes for a range of pages",
790        .cmd        = hmp_info_cmma,
791    },
792#endif
793
794SRST
795  ``info cmma`` *address*
796    Display the values of the CMMA storage attributes for a range of
797    pages (s390 only)
798ERST
799
800    {
801        .name       = "dump",
802        .args_type  = "",
803        .params     = "",
804        .help       = "Display the latest dump status",
805        .cmd        = hmp_info_dump,
806    },
807
808SRST
809  ``info dump``
810    Display the latest dump status.
811ERST
812
813    {
814        .name       = "ramblock",
815        .args_type  = "",
816        .params     = "",
817        .help       = "Display system ramblock information",
818        .cmd        = hmp_info_ramblock,
819    },
820
821SRST
822  ``info ramblock``
823    Dump all the ramblocks of the system.
824ERST
825
826    {
827        .name       = "hotpluggable-cpus",
828        .args_type  = "",
829        .params     = "",
830        .help       = "Show information about hotpluggable CPUs",
831        .cmd        = hmp_hotpluggable_cpus,
832        .flags      = "p",
833    },
834
835SRST
836  ``info hotpluggable-cpus``
837    Show information about hotpluggable CPUs
838ERST
839
840    {
841        .name       = "vm-generation-id",
842        .args_type  = "",
843        .params     = "",
844        .help       = "Show Virtual Machine Generation ID",
845        .cmd = hmp_info_vm_generation_id,
846    },
847
848SRST
849  ``info vm-generation-id``
850    Show Virtual Machine Generation ID
851ERST
852
853    {
854        .name       = "memory_size_summary",
855        .args_type  = "",
856        .params     = "",
857        .help       = "show the amount of initially allocated and "
858                      "present hotpluggable (if enabled) memory in bytes.",
859        .cmd        = hmp_info_memory_size_summary,
860    },
861
862SRST
863  ``info memory_size_summary``
864    Display the amount of initially allocated and present hotpluggable (if
865    enabled) memory in bytes.
866ERST
867
868#if defined(TARGET_I386)
869    {
870        .name       = "sev",
871        .args_type  = "",
872        .params     = "",
873        .help       = "show SEV information",
874        .cmd        = hmp_info_sev,
875    },
876#endif
877
878SRST
879  ``info sev``
880    Show SEV information.
881ERST
882
883
884