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