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