blob: 754b1e840822d908c2199ff78e9a7c657df3abbf [file] [log] [blame]
Peter Maydell3c95fde2020-03-06 17:17:44 +00001HXCOMM 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.
Pavel Butsykinda76ee72015-09-10 18:38:58 +03004HXCOMM DEF(command, args, callback, arg_string, help) is used to construct
5HXCOMM monitor info commands
Peter Maydell3c95fde2020-03-06 17:17:44 +00006HXCOMM HXCOMM can be used for comments, discarded from both rST and C.
Peter Maydella12e74c2020-02-28 15:36:07 +00007HXCOMM
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.
Pavel Butsykinda76ee72015-09-10 18:38:58 +030013
Peter Maydella12e74c2020-02-28 15:36:07 +000014SRST
15``info`` *subcommand*
16 Show various information about the system state.
17
18ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +030019
20 {
21 .name = "version",
22 .args_type = "",
23 .params = "",
24 .help = "show the version of QEMU",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +040025 .cmd = hmp_info_version,
Dr. David Alan Gilbert8c7c7ec2018-06-20 16:39:45 +010026 .flags = "p",
Pavel Butsykinda76ee72015-09-10 18:38:58 +030027 },
28
Peter Maydella12e74c2020-02-28 15:36:07 +000029SRST
30 ``info version``
31 Show the version of QEMU.
32ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +030033
34 {
35 .name = "network",
36 .args_type = "",
37 .params = "",
38 .help = "show the network state",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +040039 .cmd = hmp_info_network,
Pavel Butsykinda76ee72015-09-10 18:38:58 +030040 },
41
Peter Maydella12e74c2020-02-28 15:36:07 +000042SRST
43 ``info network``
44 Show the network state.
45ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +030046
47 {
48 .name = "chardev",
49 .args_type = "",
50 .params = "",
51 .help = "show the character devices",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +040052 .cmd = hmp_info_chardev,
Dr. David Alan Gilbert8c7c7ec2018-06-20 16:39:45 +010053 .flags = "p",
Pavel Butsykinda76ee72015-09-10 18:38:58 +030054 },
55
Peter Maydella12e74c2020-02-28 15:36:07 +000056SRST
57 ``info chardev``
58 Show the character devices.
59ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +030060
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)",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +040067 .cmd = hmp_info_block,
Pavel Butsykinda76ee72015-09-10 18:38:58 +030068 },
69
Peter Maydella12e74c2020-02-28 15:36:07 +000070SRST
71 ``info block``
72 Show info of one block device or all block devices.
73ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +030074
75 {
76 .name = "blockstats",
77 .args_type = "",
78 .params = "",
79 .help = "show block device statistics",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +040080 .cmd = hmp_info_blockstats,
Pavel Butsykinda76ee72015-09-10 18:38:58 +030081 },
82
Peter Maydella12e74c2020-02-28 15:36:07 +000083SRST
84 ``info blockstats``
85 Show block device statistics.
86ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +030087
88 {
89 .name = "block-jobs",
90 .args_type = "",
91 .params = "",
92 .help = "show progress of ongoing block device operations",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +040093 .cmd = hmp_info_block_jobs,
Pavel Butsykinda76ee72015-09-10 18:38:58 +030094 },
95
Peter Maydella12e74c2020-02-28 15:36:07 +000096SRST
97 ``info block-jobs``
98 Show progress of ongoing block device operations.
99ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300100
101 {
102 .name = "registers",
zhenwei pi00d60cf2022-08-02 15:37:20 +0800103 .args_type = "cpustate_all:-a,vcpu:i?",
104 .params = "[-a|vcpu]",
105 .help = "show the cpu registers (-a: show register info for all cpus;"
106 " vcpu: specific vCPU to query; show the current CPU's registers if"
107 " no argument is specified)",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400108 .cmd = hmp_info_registers,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300109 },
110
Peter Maydella12e74c2020-02-28 15:36:07 +0000111SRST
112 ``info registers``
113 Show the cpu registers.
114ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300115
Pavel Butsykin1f871d42015-09-22 16:18:18 +0300116#if defined(TARGET_I386)
117 {
118 .name = "lapic",
Yi Wang1bef2282017-07-26 02:18:37 -0400119 .args_type = "apic-id:i?",
120 .params = "[apic-id]",
121 .help = "show local apic state (apic-id: local apic to read, default is which of current CPU)",
122
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400123 .cmd = hmp_info_local_apic,
Pavel Butsykin1f871d42015-09-22 16:18:18 +0300124 },
125#endif
126
Peter Maydella12e74c2020-02-28 15:36:07 +0000127SRST
128 ``info lapic``
129 Show local APIC state
130ERST
Pavel Butsykin1f871d42015-09-22 16:18:18 +0300131
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300132 {
133 .name = "cpus",
134 .args_type = "",
135 .params = "",
136 .help = "show infos for each CPU",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400137 .cmd = hmp_info_cpus,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300138 },
139
Peter Maydella12e74c2020-02-28 15:36:07 +0000140SRST
141 ``info cpus``
142 Show infos for each CPU.
143ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300144
145 {
146 .name = "history",
147 .args_type = "",
148 .params = "",
149 .help = "show the command line history",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400150 .cmd = hmp_info_history,
Dr. David Alan Gilbert8c7c7ec2018-06-20 16:39:45 +0100151 .flags = "p",
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300152 },
153
Peter Maydella12e74c2020-02-28 15:36:07 +0000154SRST
155 ``info history``
156 Show the command line history.
157ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300158
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300159 {
160 .name = "irq",
161 .args_type = "",
162 .params = "",
163 .help = "show the interrupts statistics (if available)",
Daniel P. Berrangé91f2fa72021-09-08 10:35:43 +0100164 .cmd_info_hrt = qmp_x_query_irq,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300165 },
166
Peter Maydella12e74c2020-02-28 15:36:07 +0000167SRST
168 ``info irq``
169 Show the interrupts statistics (if available).
170ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300171
172 {
173 .name = "pic",
174 .args_type = "",
175 .params = "",
Hervé Poussineau254316f2016-09-26 22:23:28 +0200176 .help = "show PIC state",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400177 .cmd = hmp_info_pic,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300178 },
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300179
Peter Maydella12e74c2020-02-28 15:36:07 +0000180SRST
181 ``info pic``
182 Show PIC state.
183ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300184
Paolo Bonziniabadcbc2015-09-18 17:18:29 +0200185 {
Yuval Shaiaf4b2c022019-03-11 03:29:09 -0700186 .name = "rdma",
187 .args_type = "",
188 .params = "",
189 .help = "show RDMA state",
Daniel P. Berrangé8dbbca52021-09-08 10:35:43 +0100190 .cmd_info_hrt = qmp_x_query_rdma,
Yuval Shaiaf4b2c022019-03-11 03:29:09 -0700191 },
192
Peter Maydella12e74c2020-02-28 15:36:07 +0000193SRST
194 ``info rdma``
195 Show RDMA state.
196ERST
Yuval Shaiaf4b2c022019-03-11 03:29:09 -0700197
198 {
Paolo Bonziniabadcbc2015-09-18 17:18:29 +0200199 .name = "pci",
200 .args_type = "",
201 .params = "",
202 .help = "show PCI info",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400203 .cmd = hmp_info_pci,
Paolo Bonziniabadcbc2015-09-18 17:18:29 +0200204 },
205
Peter Maydella12e74c2020-02-28 15:36:07 +0000206SRST
207 ``info pci``
208 Show PCI information.
209ERST
Paolo Bonziniabadcbc2015-09-18 17:18:29 +0200210
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300211#if defined(TARGET_I386) || defined(TARGET_SH4) || defined(TARGET_SPARC) || \
Laurent Vivier2097dca2018-01-18 20:38:46 +0100212 defined(TARGET_PPC) || defined(TARGET_XTENSA) || defined(TARGET_M68K)
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300213 {
214 .name = "tlb",
215 .args_type = "",
216 .params = "",
217 .help = "show virtual to physical memory mappings",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400218 .cmd = hmp_info_tlb,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300219 },
220#endif
221
Peter Maydella12e74c2020-02-28 15:36:07 +0000222SRST
223 ``info tlb``
224 Show virtual to physical memory mappings.
225ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300226
Bin Mengdf42fdd2019-08-14 08:33:32 -0700227#if defined(TARGET_I386) || defined(TARGET_RISCV)
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300228 {
229 .name = "mem",
230 .args_type = "",
231 .params = "",
232 .help = "show the active virtual memory mappings",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400233 .cmd = hmp_info_mem,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300234 },
235#endif
236
Peter Maydella12e74c2020-02-28 15:36:07 +0000237SRST
238 ``info mem``
239 Show the active virtual memory mappings.
240ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300241
242 {
243 .name = "mtree",
Philippe Mathieu-Daudé2261d392020-05-29 14:53:25 +0200244 .args_type = "flatview:-f,dispatch_tree:-d,owner:-o,disabled:-D",
245 .params = "[-f][-d][-o][-D]",
Alexey Kardashevskiy5e8fd942017-09-21 18:51:06 +1000246 .help = "show memory tree (-f: dump flat view for address spaces;"
Alexey Kardashevskiyfc051ae2018-06-04 13:25:11 +1000247 "-d: dump dispatch tree, valid with -f only);"
Philippe Mathieu-Daudé2261d392020-05-29 14:53:25 +0200248 "-o: dump region owners/parents;"
249 "-D: dump disabled regions",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400250 .cmd = hmp_info_mtree,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300251 },
252
Peter Maydella12e74c2020-02-28 15:36:07 +0000253SRST
254 ``info mtree``
255 Show memory tree.
256ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300257
Paolo Bonzinif0d14a92012-09-17 13:42:41 +0200258#if defined(CONFIG_TCG)
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300259 {
260 .name = "jit",
261 .args_type = "",
262 .params = "",
263 .help = "show dynamic compiler info",
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300264 },
Paolo Bonzinif0d14a92012-09-17 13:42:41 +0200265#endif
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300266
Peter Maydella12e74c2020-02-28 15:36:07 +0000267SRST
268 ``info jit``
269 Show dynamic compiler info.
270ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300271
Paolo Bonzinif0d14a92012-09-17 13:42:41 +0200272#if defined(CONFIG_TCG)
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300273 {
274 .name = "opcount",
275 .args_type = "",
276 .params = "",
277 .help = "show dynamic compiler opcode counters",
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300278 },
Paolo Bonzinif0d14a92012-09-17 13:42:41 +0200279#endif
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300280
Peter Maydella12e74c2020-02-28 15:36:07 +0000281SRST
282 ``info opcount``
283 Show dynamic compiler opcode counters
284ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300285
286 {
Emilio G. Cota97bfafe2017-08-08 13:54:42 -0400287 .name = "sync-profile",
288 .args_type = "mean:-m,no_coalesce:-n,max:i?",
289 .params = "[-m] [-n] [max]",
290 .help = "show synchronization profiling info, up to max entries "
291 "(default: 10), sorted by total wait time. (-m: sort by "
292 "mean wait time; -n: do not coalesce objects with the "
293 "same call site)",
294 .cmd = hmp_info_sync_profile,
295 },
296
Peter Maydella12e74c2020-02-28 15:36:07 +0000297SRST
298 ``info sync-profile [-m|-n]`` [*max*]
299 Show synchronization profiling info, up to *max* entries (default: 10),
300 sorted by total wait time.
301
302 ``-m``
303 sort by mean wait time
304 ``-n``
305 do not coalesce objects with the same call site
306
307 When different objects that share the same call site are coalesced,
308 the "Object" field shows---enclosed in brackets---the number of objects
309 being coalesced.
310ERST
Emilio G. Cota97bfafe2017-08-08 13:54:42 -0400311
312 {
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300313 .name = "kvm",
314 .args_type = "",
315 .params = "",
316 .help = "show KVM information",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400317 .cmd = hmp_info_kvm,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300318 },
319
Peter Maydella12e74c2020-02-28 15:36:07 +0000320SRST
321 ``info kvm``
322 Show KVM information.
323ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300324
325 {
326 .name = "numa",
327 .args_type = "",
328 .params = "",
329 .help = "show NUMA information",
Daniel P. Berrangé1b8ae792021-09-08 10:35:43 +0100330 .cmd_info_hrt = qmp_x_query_numa,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300331 },
332
Peter Maydella12e74c2020-02-28 15:36:07 +0000333SRST
334 ``info numa``
335 Show NUMA information.
336ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300337
338 {
339 .name = "usb",
340 .args_type = "",
341 .params = "",
342 .help = "show guest USB devices",
Daniel P. Berrangéfc309202021-09-08 10:35:43 +0100343 .cmd_info_hrt = qmp_x_query_usb,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300344 },
345
Peter Maydella12e74c2020-02-28 15:36:07 +0000346SRST
347 ``info usb``
348 Show guest USB devices.
349ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300350
351 {
352 .name = "usbhost",
353 .args_type = "",
354 .params = "",
355 .help = "show host USB devices",
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300356 },
357
Peter Maydella12e74c2020-02-28 15:36:07 +0000358SRST
359 ``info usbhost``
360 Show host USB devices.
361ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300362
Alex Bennée92e28c02022-01-05 13:49:57 +0000363#if defined(CONFIG_TCG)
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300364 {
365 .name = "profile",
366 .args_type = "",
367 .params = "",
368 .help = "show profiling information",
Daniel P. Berrangé37087fd2021-09-08 10:35:43 +0100369 .cmd_info_hrt = qmp_x_query_profile,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300370 },
Alex Bennée92e28c02022-01-05 13:49:57 +0000371#endif
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300372
Peter Maydella12e74c2020-02-28 15:36:07 +0000373SRST
374 ``info profile``
375 Show profiling information.
376ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300377
378 {
379 .name = "capture",
380 .args_type = "",
381 .params = "",
382 .help = "show capture information",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400383 .cmd = hmp_info_capture,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300384 },
385
Peter Maydella12e74c2020-02-28 15:36:07 +0000386SRST
387 ``info capture``
388 Show capture information.
389ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300390
391 {
392 .name = "snapshots",
393 .args_type = "",
394 .params = "",
395 .help = "show the currently saved VM snapshots",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400396 .cmd = hmp_info_snapshots,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300397 },
398
Peter Maydella12e74c2020-02-28 15:36:07 +0000399SRST
400 ``info snapshots``
401 Show the currently saved VM snapshots.
402ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300403
404 {
405 .name = "status",
406 .args_type = "",
407 .params = "",
408 .help = "show the current VM status (running|paused)",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400409 .cmd = hmp_info_status,
Dr. David Alan Gilbert8c7c7ec2018-06-20 16:39:45 +0100410 .flags = "p",
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300411 },
412
Peter Maydella12e74c2020-02-28 15:36:07 +0000413SRST
414 ``info status``
415 Show the current VM status (running|paused).
416ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300417
418 {
419 .name = "mice",
420 .args_type = "",
421 .params = "",
422 .help = "show which guest mouse is receiving events",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400423 .cmd = hmp_info_mice,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300424 },
425
Peter Maydella12e74c2020-02-28 15:36:07 +0000426SRST
427 ``info mice``
428 Show which guest mouse is receiving events.
429ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300430
Marc-André Lureau05eb4a22018-07-03 17:56:47 +0200431#if defined(CONFIG_VNC)
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300432 {
433 .name = "vnc",
434 .args_type = "",
435 .params = "",
436 .help = "show the vnc server status",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400437 .cmd = hmp_info_vnc,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300438 },
Marc-André Lureau05eb4a22018-07-03 17:56:47 +0200439#endif
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300440
Peter Maydella12e74c2020-02-28 15:36:07 +0000441SRST
442 ``info vnc``
443 Show the vnc server status.
444ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300445
446#if defined(CONFIG_SPICE)
447 {
448 .name = "spice",
449 .args_type = "",
450 .params = "",
451 .help = "show the spice server status",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400452 .cmd = hmp_info_spice,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300453 },
454#endif
455
Peter Maydella12e74c2020-02-28 15:36:07 +0000456SRST
457 ``info spice``
458 Show the spice server status.
459ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300460
461 {
462 .name = "name",
463 .args_type = "",
464 .params = "",
465 .help = "show the current VM name",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400466 .cmd = hmp_info_name,
Dr. David Alan Gilbert8c7c7ec2018-06-20 16:39:45 +0100467 .flags = "p",
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300468 },
469
Peter Maydella12e74c2020-02-28 15:36:07 +0000470SRST
471 ``info name``
472 Show the current VM name.
473ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300474
475 {
476 .name = "uuid",
477 .args_type = "",
478 .params = "",
479 .help = "show the current VM UUID",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400480 .cmd = hmp_info_uuid,
Dr. David Alan Gilbert8c7c7ec2018-06-20 16:39:45 +0100481 .flags = "p",
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300482 },
483
Peter Maydella12e74c2020-02-28 15:36:07 +0000484SRST
485 ``info uuid``
486 Show the current VM UUID.
487ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300488
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300489#if defined(CONFIG_SLIRP)
490 {
491 .name = "usernet",
492 .args_type = "",
493 .params = "",
494 .help = "show user network stack connection states",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400495 .cmd = hmp_info_usernet,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300496 },
497#endif
498
Peter Maydella12e74c2020-02-28 15:36:07 +0000499SRST
500 ``info usernet``
501 Show user network stack connection states.
502ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300503
504 {
505 .name = "migrate",
506 .args_type = "",
507 .params = "",
508 .help = "show migration status",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400509 .cmd = hmp_info_migrate,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300510 },
511
Peter Maydella12e74c2020-02-28 15:36:07 +0000512SRST
513 ``info migrate``
514 Show migration status.
515ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300516
517 {
518 .name = "migrate_capabilities",
519 .args_type = "",
520 .params = "",
521 .help = "show current migration capabilities",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400522 .cmd = hmp_info_migrate_capabilities,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300523 },
524
Peter Maydella12e74c2020-02-28 15:36:07 +0000525SRST
526 ``info migrate_capabilities``
527 Show current migration capabilities.
528ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300529
530 {
531 .name = "migrate_parameters",
532 .args_type = "",
533 .params = "",
534 .help = "show current migration parameters",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400535 .cmd = hmp_info_migrate_parameters,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300536 },
537
Peter Maydella12e74c2020-02-28 15:36:07 +0000538SRST
539 ``info migrate_parameters``
540 Show current migration parameters.
541ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300542
543 {
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300544 .name = "balloon",
545 .args_type = "",
546 .params = "",
547 .help = "show balloon information",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400548 .cmd = hmp_info_balloon,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300549 },
550
Peter Maydella12e74c2020-02-28 15:36:07 +0000551SRST
552 ``info balloon``
553 Show balloon information.
554ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300555
556 {
557 .name = "qtree",
558 .args_type = "",
559 .params = "",
560 .help = "show device tree",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400561 .cmd = hmp_info_qtree,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300562 },
563
Peter Maydella12e74c2020-02-28 15:36:07 +0000564SRST
565 ``info qtree``
566 Show device tree.
567ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300568
569 {
570 .name = "qdm",
571 .args_type = "",
572 .params = "",
573 .help = "show qdev device model list",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400574 .cmd = hmp_info_qdm,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300575 },
576
Peter Maydella12e74c2020-02-28 15:36:07 +0000577SRST
578 ``info qdm``
579 Show qdev device model list.
580ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300581
582 {
583 .name = "qom-tree",
584 .args_type = "path:s?",
585 .params = "[path]",
586 .help = "show QOM composition tree",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400587 .cmd = hmp_info_qom_tree,
Dr. David Alan Gilbert8c7c7ec2018-06-20 16:39:45 +0100588 .flags = "p",
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300589 },
590
Peter Maydella12e74c2020-02-28 15:36:07 +0000591SRST
592 ``info qom-tree``
593 Show QOM composition tree.
594ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300595
596 {
597 .name = "roms",
598 .args_type = "",
599 .params = "",
600 .help = "show roms",
Daniel P. Berrangédd982342021-09-08 10:35:43 +0100601 .cmd_info_hrt = qmp_x_query_roms,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300602 },
603
Peter Maydella12e74c2020-02-28 15:36:07 +0000604SRST
605 ``info roms``
606 Show roms.
607ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300608
609 {
610 .name = "trace-events",
Lluís Vilanova77e2b172016-07-11 12:53:57 +0200611 .args_type = "name:s?,vcpu:i?",
612 .params = "[name] [vcpu]",
Lluís Vilanovabd712112016-07-11 12:53:51 +0200613 .help = "show available trace-events & their state "
Lluís Vilanova77e2b172016-07-11 12:53:57 +0200614 "(name: event name pattern; vcpu: vCPU to query, default is any)",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400615 .cmd = hmp_info_trace_events,
Lluís Vilanovabd712112016-07-11 12:53:51 +0200616 .command_completion = info_trace_events_completion,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300617 },
618
Peter Maydella12e74c2020-02-28 15:36:07 +0000619SRST
620 ``info trace-events``
621 Show available trace-events & their state.
622ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300623
624 {
625 .name = "tpm",
626 .args_type = "",
627 .params = "",
628 .help = "show the TPM device",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400629 .cmd = hmp_info_tpm,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300630 },
631
Peter Maydella12e74c2020-02-28 15:36:07 +0000632SRST
633 ``info tpm``
634 Show the TPM device.
635ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300636
637 {
638 .name = "memdev",
639 .args_type = "",
640 .params = "",
641 .help = "show memory backends",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400642 .cmd = hmp_info_memdev,
Dr. David Alan Gilbert8c7c7ec2018-06-20 16:39:45 +0100643 .flags = "p",
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300644 },
645
Peter Maydella12e74c2020-02-28 15:36:07 +0000646SRST
647 ``info memdev``
648 Show memory backends
649ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300650
651 {
652 .name = "memory-devices",
653 .args_type = "",
654 .params = "",
655 .help = "show memory devices",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400656 .cmd = hmp_info_memory_devices,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300657 },
658
Peter Maydella12e74c2020-02-28 15:36:07 +0000659SRST
660 ``info memory-devices``
661 Show memory devices.
662ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300663
664 {
665 .name = "iothreads",
666 .args_type = "",
667 .params = "",
668 .help = "show iothreads",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400669 .cmd = hmp_info_iothreads,
Dr. David Alan Gilbert8c7c7ec2018-06-20 16:39:45 +0100670 .flags = "p",
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300671 },
672
Peter Maydella12e74c2020-02-28 15:36:07 +0000673SRST
674 ``info iothreads``
675 Show iothread's identifiers.
676ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300677
678 {
679 .name = "rocker",
680 .args_type = "name:s",
681 .params = "name",
682 .help = "Show rocker switch",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400683 .cmd = hmp_rocker,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300684 },
685
Peter Maydella12e74c2020-02-28 15:36:07 +0000686SRST
687 ``info rocker`` *name*
688 Show rocker switch.
689ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300690
691 {
692 .name = "rocker-ports",
693 .args_type = "name:s",
694 .params = "name",
695 .help = "Show rocker ports",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400696 .cmd = hmp_rocker_ports,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300697 },
698
Peter Maydella12e74c2020-02-28 15:36:07 +0000699SRST
700 ``info rocker-ports`` *name*-ports
701 Show rocker ports.
702ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300703
704 {
705 .name = "rocker-of-dpa-flows",
706 .args_type = "name:s,tbl_id:i?",
707 .params = "name [tbl_id]",
708 .help = "Show rocker OF-DPA flow tables",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400709 .cmd = hmp_rocker_of_dpa_flows,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300710 },
711
Peter Maydella12e74c2020-02-28 15:36:07 +0000712SRST
713 ``info rocker-of-dpa-flows`` *name* [*tbl_id*]
714 Show rocker OF-DPA flow tables.
715ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300716
717 {
718 .name = "rocker-of-dpa-groups",
719 .args_type = "name:s,type:i?",
720 .params = "name [type]",
721 .help = "Show rocker OF-DPA groups",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400722 .cmd = hmp_rocker_of_dpa_groups,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300723 },
724
Peter Maydella12e74c2020-02-28 15:36:07 +0000725SRST
726 ``info rocker-of-dpa-groups`` *name* [*type*]
727 Show rocker OF-DPA groups.
728ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300729
730#if defined(TARGET_S390X)
731 {
732 .name = "skeys",
733 .args_type = "addr:l",
734 .params = "address",
735 .help = "Display the value of a storage key",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400736 .cmd = hmp_info_skeys,
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300737 },
738#endif
739
Peter Maydella12e74c2020-02-28 15:36:07 +0000740SRST
741 ``info skeys`` *address*
742 Display the value of a storage key (s390 only)
743ERST
Pavel Butsykinda76ee72015-09-10 18:38:58 +0300744
Claudio Imbrendaf860d492016-08-15 18:44:04 +0200745#if defined(TARGET_S390X)
746 {
747 .name = "cmma",
748 .args_type = "addr:l,count:l?",
749 .params = "address [count]",
750 .help = "Display the values of the CMMA storage attributes for a range of pages",
751 .cmd = hmp_info_cmma,
752 },
753#endif
754
Peter Maydella12e74c2020-02-28 15:36:07 +0000755SRST
756 ``info cmma`` *address*
757 Display the values of the CMMA storage attributes for a range of
758 pages (s390 only)
759ERST
Claudio Imbrendaf860d492016-08-15 18:44:04 +0200760
Peter Xu4a6b52d2016-02-18 13:16:55 +0800761 {
762 .name = "dump",
763 .args_type = "",
764 .params = "",
765 .help = "Display the latest dump status",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400766 .cmd = hmp_info_dump,
Peter Xu4a6b52d2016-02-18 13:16:55 +0800767 },
768
Peter Maydella12e74c2020-02-28 15:36:07 +0000769SRST
770 ``info dump``
771 Display the latest dump status.
772ERST
Peter Xu4a6b52d2016-02-18 13:16:55 +0800773
Bharata B Raod2d8d462016-06-10 06:29:07 +0530774 {
Peter Xube9b23c2017-05-12 12:17:41 +0800775 .name = "ramblock",
776 .args_type = "",
777 .params = "",
778 .help = "Display system ramblock information",
Daniel P. Berrangéca411b72021-09-08 10:35:43 +0100779 .cmd_info_hrt = qmp_x_query_ramblock,
Peter Xube9b23c2017-05-12 12:17:41 +0800780 },
781
Peter Maydella12e74c2020-02-28 15:36:07 +0000782SRST
783 ``info ramblock``
784 Dump all the ramblocks of the system.
785ERST
Peter Xube9b23c2017-05-12 12:17:41 +0800786
787 {
Bharata B Raod2d8d462016-06-10 06:29:07 +0530788 .name = "hotpluggable-cpus",
789 .args_type = "",
790 .params = "",
791 .help = "Show information about hotpluggable CPUs",
Marc-André Lureau2b9e3572016-09-12 13:19:06 +0400792 .cmd = hmp_hotpluggable_cpus,
Dr. David Alan Gilbert8c7c7ec2018-06-20 16:39:45 +0100793 .flags = "p",
Bharata B Raod2d8d462016-06-10 06:29:07 +0530794 },
795
Peter Maydella12e74c2020-02-28 15:36:07 +0000796SRST
797 ``info hotpluggable-cpus``
798 Show information about hotpluggable CPUs
799ERST
Bharata B Raod2d8d462016-06-10 06:29:07 +0530800
Igor Mammedov39164c12017-02-16 15:15:37 -0800801 {
802 .name = "vm-generation-id",
803 .args_type = "",
804 .params = "",
805 .help = "Show Virtual Machine Generation ID",
806 .cmd = hmp_info_vm_generation_id,
807 },
808
Peter Maydella12e74c2020-02-28 15:36:07 +0000809SRST
810 ``info vm-generation-id``
811 Show Virtual Machine Generation ID
812ERST
Vadim Galitsynd0f63c12017-08-29 17:30:22 +0200813
814 {
815 .name = "memory_size_summary",
816 .args_type = "",
817 .params = "",
818 .help = "show the amount of initially allocated and "
819 "present hotpluggable (if enabled) memory in bytes.",
820 .cmd = hmp_info_memory_size_summary,
821 },
822
Peter Maydella12e74c2020-02-28 15:36:07 +0000823SRST
824 ``info memory_size_summary``
825 Display the amount of initially allocated and present hotpluggable (if
826 enabled) memory in bytes.
827ERST
Markus Armbrustera9272512017-10-02 15:45:37 +0200828
Brijesh Singh63036312018-03-08 06:48:47 -0600829#if defined(TARGET_I386)
830 {
831 .name = "sev",
832 .args_type = "",
833 .params = "",
834 .help = "show SEV information",
835 .cmd = hmp_info_sev,
836 },
837#endif
838
Peter Maydella12e74c2020-02-28 15:36:07 +0000839SRST
840 ``info sev``
841 Show SEV information.
842ERST
Brijesh Singh63036312018-03-08 06:48:47 -0600843
Pavel Dovgalyuke3b09ad2020-10-03 20:13:20 +0300844 {
845 .name = "replay",
846 .args_type = "",
847 .params = "",
848 .help = "show record/replay information",
849 .cmd = hmp_info_replay,
850 },
Pavel Butsykin2cd8af22015-09-10 18:39:01 +0300851
Pavel Dovgalyuke3b09ad2020-10-03 20:13:20 +0300852SRST
853 ``info replay``
854 Display the record/replay information: mode and the current icount.
855ERST
Peter Xua4a571d2021-06-07 09:11:57 +0800856
857 {
858 .name = "dirty_rate",
859 .args_type = "",
860 .params = "",
861 .help = "show dirty rate information",
862 .cmd = hmp_info_dirty_rate,
863 },
864
865SRST
866 ``info dirty_rate``
867 Display the vcpu dirty rate information.
868ERST
Yang Zhong57d874c2021-09-10 18:22:56 +0800869
Hyman Huang(黄勇)f3b2e382022-06-26 01:38:36 +0800870 {
871 .name = "vcpu_dirty_limit",
872 .args_type = "",
873 .params = "",
874 .help = "show dirty page limit information of all vCPU",
875 .cmd = hmp_info_vcpu_dirty_limit,
876 },
877
878SRST
879 ``info vcpu_dirty_limit``
880 Display the vcpu dirty page limit information.
881ERST
882
Yang Zhong57d874c2021-09-10 18:22:56 +0800883#if defined(TARGET_I386)
884 {
885 .name = "sgx",
886 .args_type = "",
887 .params = "",
888 .help = "show intel SGX information",
889 .cmd = hmp_info_sgx,
890 },
891#endif
892
893SRST
894 ``info sgx``
895 Show intel SGX information.
896ERST
Mark Cave-Ayland409e9f72022-03-05 15:09:53 +0000897
Murilo Opsfelder Araujoc9f80042022-05-10 20:54:39 -0300898#if defined(CONFIG_MOS6522)
Mark Cave-Ayland409e9f72022-03-05 15:09:53 +0000899 {
900 .name = "via",
901 .args_type = "",
902 .params = "",
903 .help = "show guest mos6522 VIA devices",
904 .cmd = hmp_info_via,
905 },
906#endif
907
908SRST
909 ``info via``
910 Show guest mos6522 VIA devices.
911ERST
Mark Kanda433815f2022-04-26 12:17:35 +0200912
913 {
914 .name = "stats",
Paolo Bonzini39cd0c72022-04-26 14:09:31 +0200915 .args_type = "target:s,names:s?,provider:s?",
916 .params = "target [names] [provider]",
917 .help = "show statistics for the given target (vm or vcpu); optionally filter by"
918 "name (comma-separated list, or * for all) and provider",
Mark Kanda433815f2022-04-26 12:17:35 +0200919 .cmd = hmp_info_stats,
920 },
921
922SRST
923 ``stats``
924 Show runtime-collected statistics
925ERST
Laurent Vivier8a828792022-08-11 08:24:44 -0400926
927 {
928 .name = "virtio",
929 .args_type = "",
930 .params = "",
931 .help = "List all available virtio devices",
932 .cmd = hmp_virtio_query,
933 .flags = "p",
934 },
935
936SRST
937 ``info virtio``
938 List all available virtio devices
939ERST
940
941 {
942 .name = "virtio-status",
943 .args_type = "path:s",
944 .params = "path",
945 .help = "Display status of a given virtio device",
946 .cmd = hmp_virtio_status,
947 .flags = "p",
948 },
949
950SRST
951 ``info virtio-status`` *path*
952 Display status of a given virtio device
953ERST
954
955 {
956 .name = "virtio-queue-status",
957 .args_type = "path:s,queue:i",
958 .params = "path queue",
959 .help = "Display status of a given virtio queue",
960 .cmd = hmp_virtio_queue_status,
961 .flags = "p",
962 },
963
964SRST
965 ``info virtio-queue-status`` *path* *queue*
966 Display status of a given virtio queue
967ERST
968
969 {
970 .name = "virtio-vhost-queue-status",
971 .args_type = "path:s,queue:i",
972 .params = "path queue",
973 .help = "Display status of a given vhost queue",
974 .cmd = hmp_vhost_queue_status,
975 .flags = "p",
976 },
977
978SRST
979 ``info virtio-vhost-queue-status`` *path* *queue*
980 Display status of a given vhost queue
981ERST
982
983 {
984 .name = "virtio-queue-element",
985 .args_type = "path:s,queue:i,index:i?",
986 .params = "path queue [index]",
987 .help = "Display element of a given virtio queue",
988 .cmd = hmp_virtio_queue_element,
989 .flags = "p",
990 },
991
992SRST
993 ``info virtio-queue-element`` *path* *queue* [*index*]
994 Display element of a given virtio queue
995ERST