xref: /openbmc/qemu/hmp-commands-info.hx (revision d177892d)
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,disabled:-D",
258        .params     = "[-f][-d][-o][-D]",
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                      "-D: dump disabled regions",
263        .cmd        = hmp_info_mtree,
264    },
265
266SRST
267  ``info mtree``
268    Show memory tree.
269ERST
270
271#if defined(CONFIG_TCG)
272    {
273        .name       = "jit",
274        .args_type  = "",
275        .params     = "",
276        .help       = "show dynamic compiler info",
277        .cmd        = hmp_info_jit,
278    },
279#endif
280
281SRST
282  ``info jit``
283    Show dynamic compiler info.
284ERST
285
286#if defined(CONFIG_TCG)
287    {
288        .name       = "opcount",
289        .args_type  = "",
290        .params     = "",
291        .help       = "show dynamic compiler opcode counters",
292        .cmd        = hmp_info_opcount,
293    },
294#endif
295
296SRST
297  ``info opcount``
298    Show dynamic compiler opcode counters
299ERST
300
301    {
302        .name       = "sync-profile",
303        .args_type  = "mean:-m,no_coalesce:-n,max:i?",
304        .params     = "[-m] [-n] [max]",
305        .help       = "show synchronization profiling info, up to max entries "
306                      "(default: 10), sorted by total wait time. (-m: sort by "
307                      "mean wait time; -n: do not coalesce objects with the "
308                      "same call site)",
309        .cmd        = hmp_info_sync_profile,
310    },
311
312SRST
313  ``info sync-profile [-m|-n]`` [*max*]
314    Show synchronization profiling info, up to *max* entries (default: 10),
315    sorted by total wait time.
316
317    ``-m``
318      sort by mean wait time
319    ``-n``
320      do not coalesce objects with the same call site
321
322    When different objects that share the same call site are coalesced,
323    the "Object" field shows---enclosed in brackets---the number of objects
324    being coalesced.
325ERST
326
327    {
328        .name       = "kvm",
329        .args_type  = "",
330        .params     = "",
331        .help       = "show KVM information",
332        .cmd        = hmp_info_kvm,
333    },
334
335SRST
336  ``info kvm``
337    Show KVM information.
338ERST
339
340    {
341        .name       = "numa",
342        .args_type  = "",
343        .params     = "",
344        .help       = "show NUMA information",
345        .cmd        = hmp_info_numa,
346    },
347
348SRST
349  ``info numa``
350    Show NUMA information.
351ERST
352
353    {
354        .name       = "usb",
355        .args_type  = "",
356        .params     = "",
357        .help       = "show guest USB devices",
358        .cmd        = hmp_info_usb,
359    },
360
361SRST
362  ``info usb``
363    Show guest USB devices.
364ERST
365
366    {
367        .name       = "usbhost",
368        .args_type  = "",
369        .params     = "",
370        .help       = "show host USB devices",
371        .cmd        = hmp_info_usbhost,
372    },
373
374SRST
375  ``info usbhost``
376    Show host USB devices.
377ERST
378
379    {
380        .name       = "profile",
381        .args_type  = "",
382        .params     = "",
383        .help       = "show profiling information",
384        .cmd        = hmp_info_profile,
385    },
386
387SRST
388  ``info profile``
389    Show profiling information.
390ERST
391
392    {
393        .name       = "capture",
394        .args_type  = "",
395        .params     = "",
396        .help       = "show capture information",
397        .cmd        = hmp_info_capture,
398    },
399
400SRST
401  ``info capture``
402    Show capture information.
403ERST
404
405    {
406        .name       = "snapshots",
407        .args_type  = "",
408        .params     = "",
409        .help       = "show the currently saved VM snapshots",
410        .cmd        = hmp_info_snapshots,
411    },
412
413SRST
414  ``info snapshots``
415    Show the currently saved VM snapshots.
416ERST
417
418    {
419        .name       = "status",
420        .args_type  = "",
421        .params     = "",
422        .help       = "show the current VM status (running|paused)",
423        .cmd        = hmp_info_status,
424        .flags      = "p",
425    },
426
427SRST
428  ``info status``
429    Show the current VM status (running|paused).
430ERST
431
432    {
433        .name       = "mice",
434        .args_type  = "",
435        .params     = "",
436        .help       = "show which guest mouse is receiving events",
437        .cmd        = hmp_info_mice,
438    },
439
440SRST
441  ``info mice``
442    Show which guest mouse is receiving events.
443ERST
444
445#if defined(CONFIG_VNC)
446    {
447        .name       = "vnc",
448        .args_type  = "",
449        .params     = "",
450        .help       = "show the vnc server status",
451        .cmd        = hmp_info_vnc,
452    },
453#endif
454
455SRST
456  ``info vnc``
457    Show the vnc server status.
458ERST
459
460#if defined(CONFIG_SPICE)
461    {
462        .name       = "spice",
463        .args_type  = "",
464        .params     = "",
465        .help       = "show the spice server status",
466        .cmd        = hmp_info_spice,
467    },
468#endif
469
470SRST
471  ``info spice``
472    Show the spice server status.
473ERST
474
475    {
476        .name       = "name",
477        .args_type  = "",
478        .params     = "",
479        .help       = "show the current VM name",
480        .cmd        = hmp_info_name,
481        .flags      = "p",
482    },
483
484SRST
485  ``info name``
486    Show the current VM name.
487ERST
488
489    {
490        .name       = "uuid",
491        .args_type  = "",
492        .params     = "",
493        .help       = "show the current VM UUID",
494        .cmd        = hmp_info_uuid,
495        .flags      = "p",
496    },
497
498SRST
499  ``info uuid``
500    Show the current VM UUID.
501ERST
502
503    {
504        .name       = "cpustats",
505        .args_type  = "",
506        .params     = "",
507        .help       = "show CPU statistics",
508        .cmd        = hmp_info_cpustats,
509    },
510
511SRST
512  ``info cpustats``
513    Show CPU statistics.
514ERST
515
516#if defined(CONFIG_SLIRP)
517    {
518        .name       = "usernet",
519        .args_type  = "",
520        .params     = "",
521        .help       = "show user network stack connection states",
522        .cmd        = hmp_info_usernet,
523    },
524#endif
525
526SRST
527  ``info usernet``
528    Show user network stack connection states.
529ERST
530
531    {
532        .name       = "migrate",
533        .args_type  = "",
534        .params     = "",
535        .help       = "show migration status",
536        .cmd        = hmp_info_migrate,
537    },
538
539SRST
540  ``info migrate``
541    Show migration status.
542ERST
543
544    {
545        .name       = "migrate_capabilities",
546        .args_type  = "",
547        .params     = "",
548        .help       = "show current migration capabilities",
549        .cmd        = hmp_info_migrate_capabilities,
550    },
551
552SRST
553  ``info migrate_capabilities``
554    Show current migration capabilities.
555ERST
556
557    {
558        .name       = "migrate_parameters",
559        .args_type  = "",
560        .params     = "",
561        .help       = "show current migration parameters",
562        .cmd        = hmp_info_migrate_parameters,
563    },
564
565SRST
566  ``info migrate_parameters``
567    Show current migration parameters.
568ERST
569
570    {
571        .name       = "balloon",
572        .args_type  = "",
573        .params     = "",
574        .help       = "show balloon information",
575        .cmd        = hmp_info_balloon,
576    },
577
578SRST
579  ``info balloon``
580    Show balloon information.
581ERST
582
583    {
584        .name       = "qtree",
585        .args_type  = "",
586        .params     = "",
587        .help       = "show device tree",
588        .cmd        = hmp_info_qtree,
589    },
590
591SRST
592  ``info qtree``
593    Show device tree.
594ERST
595
596    {
597        .name       = "qdm",
598        .args_type  = "",
599        .params     = "",
600        .help       = "show qdev device model list",
601        .cmd        = hmp_info_qdm,
602    },
603
604SRST
605  ``info qdm``
606    Show qdev device model list.
607ERST
608
609    {
610        .name       = "qom-tree",
611        .args_type  = "path:s?",
612        .params     = "[path]",
613        .help       = "show QOM composition tree",
614        .cmd        = hmp_info_qom_tree,
615        .flags      = "p",
616    },
617
618SRST
619  ``info qom-tree``
620    Show QOM composition tree.
621ERST
622
623    {
624        .name       = "roms",
625        .args_type  = "",
626        .params     = "",
627        .help       = "show roms",
628        .cmd        = hmp_info_roms,
629    },
630
631SRST
632  ``info roms``
633    Show roms.
634ERST
635
636    {
637        .name       = "trace-events",
638        .args_type  = "name:s?,vcpu:i?",
639        .params     = "[name] [vcpu]",
640        .help       = "show available trace-events & their state "
641                      "(name: event name pattern; vcpu: vCPU to query, default is any)",
642        .cmd = hmp_info_trace_events,
643        .command_completion = info_trace_events_completion,
644    },
645
646SRST
647  ``info trace-events``
648    Show available trace-events & their state.
649ERST
650
651    {
652        .name       = "tpm",
653        .args_type  = "",
654        .params     = "",
655        .help       = "show the TPM device",
656        .cmd        = hmp_info_tpm,
657    },
658
659SRST
660  ``info tpm``
661    Show the TPM device.
662ERST
663
664    {
665        .name       = "memdev",
666        .args_type  = "",
667        .params     = "",
668        .help       = "show memory backends",
669        .cmd        = hmp_info_memdev,
670        .flags      = "p",
671    },
672
673SRST
674  ``info memdev``
675    Show memory backends
676ERST
677
678    {
679        .name       = "memory-devices",
680        .args_type  = "",
681        .params     = "",
682        .help       = "show memory devices",
683        .cmd        = hmp_info_memory_devices,
684    },
685
686SRST
687  ``info memory-devices``
688    Show memory devices.
689ERST
690
691    {
692        .name       = "iothreads",
693        .args_type  = "",
694        .params     = "",
695        .help       = "show iothreads",
696        .cmd        = hmp_info_iothreads,
697        .flags      = "p",
698    },
699
700SRST
701  ``info iothreads``
702    Show iothread's identifiers.
703ERST
704
705    {
706        .name       = "rocker",
707        .args_type  = "name:s",
708        .params     = "name",
709        .help       = "Show rocker switch",
710        .cmd        = hmp_rocker,
711    },
712
713SRST
714  ``info rocker`` *name*
715    Show rocker switch.
716ERST
717
718    {
719        .name       = "rocker-ports",
720        .args_type  = "name:s",
721        .params     = "name",
722        .help       = "Show rocker ports",
723        .cmd        = hmp_rocker_ports,
724    },
725
726SRST
727  ``info rocker-ports`` *name*-ports
728    Show rocker ports.
729ERST
730
731    {
732        .name       = "rocker-of-dpa-flows",
733        .args_type  = "name:s,tbl_id:i?",
734        .params     = "name [tbl_id]",
735        .help       = "Show rocker OF-DPA flow tables",
736        .cmd        = hmp_rocker_of_dpa_flows,
737    },
738
739SRST
740  ``info rocker-of-dpa-flows`` *name* [*tbl_id*]
741    Show rocker OF-DPA flow tables.
742ERST
743
744    {
745        .name       = "rocker-of-dpa-groups",
746        .args_type  = "name:s,type:i?",
747        .params     = "name [type]",
748        .help       = "Show rocker OF-DPA groups",
749        .cmd        = hmp_rocker_of_dpa_groups,
750    },
751
752SRST
753  ``info rocker-of-dpa-groups`` *name* [*type*]
754    Show rocker OF-DPA groups.
755ERST
756
757#if defined(TARGET_S390X)
758    {
759        .name       = "skeys",
760        .args_type  = "addr:l",
761        .params     = "address",
762        .help       = "Display the value of a storage key",
763        .cmd        = hmp_info_skeys,
764    },
765#endif
766
767SRST
768  ``info skeys`` *address*
769    Display the value of a storage key (s390 only)
770ERST
771
772#if defined(TARGET_S390X)
773    {
774        .name       = "cmma",
775        .args_type  = "addr:l,count:l?",
776        .params     = "address [count]",
777        .help       = "Display the values of the CMMA storage attributes for a range of pages",
778        .cmd        = hmp_info_cmma,
779    },
780#endif
781
782SRST
783  ``info cmma`` *address*
784    Display the values of the CMMA storage attributes for a range of
785    pages (s390 only)
786ERST
787
788    {
789        .name       = "dump",
790        .args_type  = "",
791        .params     = "",
792        .help       = "Display the latest dump status",
793        .cmd        = hmp_info_dump,
794    },
795
796SRST
797  ``info dump``
798    Display the latest dump status.
799ERST
800
801    {
802        .name       = "ramblock",
803        .args_type  = "",
804        .params     = "",
805        .help       = "Display system ramblock information",
806        .cmd        = hmp_info_ramblock,
807    },
808
809SRST
810  ``info ramblock``
811    Dump all the ramblocks of the system.
812ERST
813
814    {
815        .name       = "hotpluggable-cpus",
816        .args_type  = "",
817        .params     = "",
818        .help       = "Show information about hotpluggable CPUs",
819        .cmd        = hmp_hotpluggable_cpus,
820        .flags      = "p",
821    },
822
823SRST
824  ``info hotpluggable-cpus``
825    Show information about hotpluggable CPUs
826ERST
827
828    {
829        .name       = "vm-generation-id",
830        .args_type  = "",
831        .params     = "",
832        .help       = "Show Virtual Machine Generation ID",
833        .cmd = hmp_info_vm_generation_id,
834    },
835
836SRST
837  ``info vm-generation-id``
838    Show Virtual Machine Generation ID
839ERST
840
841    {
842        .name       = "memory_size_summary",
843        .args_type  = "",
844        .params     = "",
845        .help       = "show the amount of initially allocated and "
846                      "present hotpluggable (if enabled) memory in bytes.",
847        .cmd        = hmp_info_memory_size_summary,
848    },
849
850SRST
851  ``info memory_size_summary``
852    Display the amount of initially allocated and present hotpluggable (if
853    enabled) memory in bytes.
854ERST
855
856#if defined(TARGET_I386)
857    {
858        .name       = "sev",
859        .args_type  = "",
860        .params     = "",
861        .help       = "show SEV information",
862        .cmd        = hmp_info_sev,
863    },
864#endif
865
866SRST
867  ``info sev``
868    Show SEV information.
869ERST
870
871    {
872        .name       = "replay",
873        .args_type  = "",
874        .params     = "",
875        .help       = "show record/replay information",
876        .cmd        = hmp_info_replay,
877    },
878
879SRST
880  ``info replay``
881    Display the record/replay information: mode and the current icount.
882ERST
883