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