Merge tag 'artist-cursor-fix-final-pull-request' of https://github.com/hdeller/qemu...
[qemu.git] / hmp-commands-info.hx
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     {
362         .name       = "profile",
363         .args_type  = "",
364         .params     = "",
365         .help       = "show profiling information",
366         .cmd_info_hrt = qmp_x_query_profile,
367     },
368
369 SRST
370   ``info profile``
371     Show profiling information.
372 ERST
373
374     {
375         .name       = "capture",
376         .args_type  = "",
377         .params     = "",
378         .help       = "show capture information",
379         .cmd        = hmp_info_capture,
380     },
381
382 SRST
383   ``info capture``
384     Show capture information.
385 ERST
386
387     {
388         .name       = "snapshots",
389         .args_type  = "",
390         .params     = "",
391         .help       = "show the currently saved VM snapshots",
392         .cmd        = hmp_info_snapshots,
393     },
394
395 SRST
396   ``info snapshots``
397     Show the currently saved VM snapshots.
398 ERST
399
400     {
401         .name       = "status",
402         .args_type  = "",
403         .params     = "",
404         .help       = "show the current VM status (running|paused)",
405         .cmd        = hmp_info_status,
406         .flags      = "p",
407     },
408
409 SRST
410   ``info status``
411     Show the current VM status (running|paused).
412 ERST
413
414     {
415         .name       = "mice",
416         .args_type  = "",
417         .params     = "",
418         .help       = "show which guest mouse is receiving events",
419         .cmd        = hmp_info_mice,
420     },
421
422 SRST
423   ``info mice``
424     Show which guest mouse is receiving events.
425 ERST
426
427 #if defined(CONFIG_VNC)
428     {
429         .name       = "vnc",
430         .args_type  = "",
431         .params     = "",
432         .help       = "show the vnc server status",
433         .cmd        = hmp_info_vnc,
434     },
435 #endif
436
437 SRST
438   ``info vnc``
439     Show the vnc server status.
440 ERST
441
442 #if defined(CONFIG_SPICE)
443     {
444         .name       = "spice",
445         .args_type  = "",
446         .params     = "",
447         .help       = "show the spice server status",
448         .cmd        = hmp_info_spice,
449     },
450 #endif
451
452 SRST
453   ``info spice``
454     Show the spice server status.
455 ERST
456
457     {
458         .name       = "name",
459         .args_type  = "",
460         .params     = "",
461         .help       = "show the current VM name",
462         .cmd        = hmp_info_name,
463         .flags      = "p",
464     },
465
466 SRST
467   ``info name``
468     Show the current VM name.
469 ERST
470
471     {
472         .name       = "uuid",
473         .args_type  = "",
474         .params     = "",
475         .help       = "show the current VM UUID",
476         .cmd        = hmp_info_uuid,
477         .flags      = "p",
478     },
479
480 SRST
481   ``info uuid``
482     Show the current VM UUID.
483 ERST
484
485 #if defined(CONFIG_SLIRP)
486     {
487         .name       = "usernet",
488         .args_type  = "",
489         .params     = "",
490         .help       = "show user network stack connection states",
491         .cmd        = hmp_info_usernet,
492     },
493 #endif
494
495 SRST
496   ``info usernet``
497     Show user network stack connection states.
498 ERST
499
500     {
501         .name       = "migrate",
502         .args_type  = "",
503         .params     = "",
504         .help       = "show migration status",
505         .cmd        = hmp_info_migrate,
506     },
507
508 SRST
509   ``info migrate``
510     Show migration status.
511 ERST
512
513     {
514         .name       = "migrate_capabilities",
515         .args_type  = "",
516         .params     = "",
517         .help       = "show current migration capabilities",
518         .cmd        = hmp_info_migrate_capabilities,
519     },
520
521 SRST
522   ``info migrate_capabilities``
523     Show current migration capabilities.
524 ERST
525
526     {
527         .name       = "migrate_parameters",
528         .args_type  = "",
529         .params     = "",
530         .help       = "show current migration parameters",
531         .cmd        = hmp_info_migrate_parameters,
532     },
533
534 SRST
535   ``info migrate_parameters``
536     Show current migration parameters.
537 ERST
538
539     {
540         .name       = "balloon",
541         .args_type  = "",
542         .params     = "",
543         .help       = "show balloon information",
544         .cmd        = hmp_info_balloon,
545     },
546
547 SRST
548   ``info balloon``
549     Show balloon information.
550 ERST
551
552     {
553         .name       = "qtree",
554         .args_type  = "",
555         .params     = "",
556         .help       = "show device tree",
557         .cmd        = hmp_info_qtree,
558     },
559
560 SRST
561   ``info qtree``
562     Show device tree.
563 ERST
564
565     {
566         .name       = "qdm",
567         .args_type  = "",
568         .params     = "",
569         .help       = "show qdev device model list",
570         .cmd        = hmp_info_qdm,
571     },
572
573 SRST
574   ``info qdm``
575     Show qdev device model list.
576 ERST
577
578     {
579         .name       = "qom-tree",
580         .args_type  = "path:s?",
581         .params     = "[path]",
582         .help       = "show QOM composition tree",
583         .cmd        = hmp_info_qom_tree,
584         .flags      = "p",
585     },
586
587 SRST
588   ``info qom-tree``
589     Show QOM composition tree.
590 ERST
591
592     {
593         .name       = "roms",
594         .args_type  = "",
595         .params     = "",
596         .help       = "show roms",
597         .cmd_info_hrt = qmp_x_query_roms,
598     },
599
600 SRST
601   ``info roms``
602     Show roms.
603 ERST
604
605     {
606         .name       = "trace-events",
607         .args_type  = "name:s?,vcpu:i?",
608         .params     = "[name] [vcpu]",
609         .help       = "show available trace-events & their state "
610                       "(name: event name pattern; vcpu: vCPU to query, default is any)",
611         .cmd = hmp_info_trace_events,
612         .command_completion = info_trace_events_completion,
613     },
614
615 SRST
616   ``info trace-events``
617     Show available trace-events & their state.
618 ERST
619
620     {
621         .name       = "tpm",
622         .args_type  = "",
623         .params     = "",
624         .help       = "show the TPM device",
625         .cmd        = hmp_info_tpm,
626     },
627
628 SRST
629   ``info tpm``
630     Show the TPM device.
631 ERST
632
633     {
634         .name       = "memdev",
635         .args_type  = "",
636         .params     = "",
637         .help       = "show memory backends",
638         .cmd        = hmp_info_memdev,
639         .flags      = "p",
640     },
641
642 SRST
643   ``info memdev``
644     Show memory backends
645 ERST
646
647     {
648         .name       = "memory-devices",
649         .args_type  = "",
650         .params     = "",
651         .help       = "show memory devices",
652         .cmd        = hmp_info_memory_devices,
653     },
654
655 SRST
656   ``info memory-devices``
657     Show memory devices.
658 ERST
659
660     {
661         .name       = "iothreads",
662         .args_type  = "",
663         .params     = "",
664         .help       = "show iothreads",
665         .cmd        = hmp_info_iothreads,
666         .flags      = "p",
667     },
668
669 SRST
670   ``info iothreads``
671     Show iothread's identifiers.
672 ERST
673
674     {
675         .name       = "rocker",
676         .args_type  = "name:s",
677         .params     = "name",
678         .help       = "Show rocker switch",
679         .cmd        = hmp_rocker,
680     },
681
682 SRST
683   ``info rocker`` *name*
684     Show rocker switch.
685 ERST
686
687     {
688         .name       = "rocker-ports",
689         .args_type  = "name:s",
690         .params     = "name",
691         .help       = "Show rocker ports",
692         .cmd        = hmp_rocker_ports,
693     },
694
695 SRST
696   ``info rocker-ports`` *name*-ports
697     Show rocker ports.
698 ERST
699
700     {
701         .name       = "rocker-of-dpa-flows",
702         .args_type  = "name:s,tbl_id:i?",
703         .params     = "name [tbl_id]",
704         .help       = "Show rocker OF-DPA flow tables",
705         .cmd        = hmp_rocker_of_dpa_flows,
706     },
707
708 SRST
709   ``info rocker-of-dpa-flows`` *name* [*tbl_id*]
710     Show rocker OF-DPA flow tables.
711 ERST
712
713     {
714         .name       = "rocker-of-dpa-groups",
715         .args_type  = "name:s,type:i?",
716         .params     = "name [type]",
717         .help       = "Show rocker OF-DPA groups",
718         .cmd        = hmp_rocker_of_dpa_groups,
719     },
720
721 SRST
722   ``info rocker-of-dpa-groups`` *name* [*type*]
723     Show rocker OF-DPA groups.
724 ERST
725
726 #if defined(TARGET_S390X)
727     {
728         .name       = "skeys",
729         .args_type  = "addr:l",
730         .params     = "address",
731         .help       = "Display the value of a storage key",
732         .cmd        = hmp_info_skeys,
733     },
734 #endif
735
736 SRST
737   ``info skeys`` *address*
738     Display the value of a storage key (s390 only)
739 ERST
740
741 #if defined(TARGET_S390X)
742     {
743         .name       = "cmma",
744         .args_type  = "addr:l,count:l?",
745         .params     = "address [count]",
746         .help       = "Display the values of the CMMA storage attributes for a range of pages",
747         .cmd        = hmp_info_cmma,
748     },
749 #endif
750
751 SRST
752   ``info cmma`` *address*
753     Display the values of the CMMA storage attributes for a range of
754     pages (s390 only)
755 ERST
756
757     {
758         .name       = "dump",
759         .args_type  = "",
760         .params     = "",
761         .help       = "Display the latest dump status",
762         .cmd        = hmp_info_dump,
763     },
764
765 SRST
766   ``info dump``
767     Display the latest dump status.
768 ERST
769
770     {
771         .name       = "ramblock",
772         .args_type  = "",
773         .params     = "",
774         .help       = "Display system ramblock information",
775         .cmd_info_hrt = qmp_x_query_ramblock,
776     },
777
778 SRST
779   ``info ramblock``
780     Dump all the ramblocks of the system.
781 ERST
782
783     {
784         .name       = "hotpluggable-cpus",
785         .args_type  = "",
786         .params     = "",
787         .help       = "Show information about hotpluggable CPUs",
788         .cmd        = hmp_hotpluggable_cpus,
789         .flags      = "p",
790     },
791
792 SRST
793   ``info hotpluggable-cpus``
794     Show information about hotpluggable CPUs
795 ERST
796
797     {
798         .name       = "vm-generation-id",
799         .args_type  = "",
800         .params     = "",
801         .help       = "Show Virtual Machine Generation ID",
802         .cmd = hmp_info_vm_generation_id,
803     },
804
805 SRST
806   ``info vm-generation-id``
807     Show Virtual Machine Generation ID
808 ERST
809
810     {
811         .name       = "memory_size_summary",
812         .args_type  = "",
813         .params     = "",
814         .help       = "show the amount of initially allocated and "
815                       "present hotpluggable (if enabled) memory in bytes.",
816         .cmd        = hmp_info_memory_size_summary,
817     },
818
819 SRST
820   ``info memory_size_summary``
821     Display the amount of initially allocated and present hotpluggable (if
822     enabled) memory in bytes.
823 ERST
824
825 #if defined(TARGET_I386)
826     {
827         .name       = "sev",
828         .args_type  = "",
829         .params     = "",
830         .help       = "show SEV information",
831         .cmd        = hmp_info_sev,
832     },
833 #endif
834
835 SRST
836   ``info sev``
837     Show SEV information.
838 ERST
839
840     {
841         .name       = "replay",
842         .args_type  = "",
843         .params     = "",
844         .help       = "show record/replay information",
845         .cmd        = hmp_info_replay,
846     },
847
848 SRST
849   ``info replay``
850     Display the record/replay information: mode and the current icount.
851 ERST
852
853     {
854         .name       = "dirty_rate",
855         .args_type  = "",
856         .params     = "",
857         .help       = "show dirty rate information",
858         .cmd        = hmp_info_dirty_rate,
859     },
860
861 SRST
862   ``info dirty_rate``
863     Display the vcpu dirty rate information.
864 ERST
865
866 #if defined(TARGET_I386)
867     {
868         .name       = "sgx",
869         .args_type  = "",
870         .params     = "",
871         .help       = "show intel SGX information",
872         .cmd        = hmp_info_sgx,
873     },
874 #endif
875
876 SRST
877   ``info sgx``
878     Show intel SGX information.
879 ERST