virtio.json (6a4cff8e1a80bafc4b8fe2bfb10081f4880d1b3b) | virtio.json (a937b6aa739f65f2cae2ad9a7eb65a309ad2a359) |
---|---|
1# -*- Mode: Python -*- 2# vim: filetype=python 3# 4 5## 6# = Virtio devices 7## 8 9## 10# @VirtioInfo: 11# 12# Basic information about a given VirtIODevice 13# 14# @path: The VirtIODevice's canonical QOM path 15# 16# @name: Name of the VirtIODevice 17# 18# Since: 7.2 | 1# -*- Mode: Python -*- 2# vim: filetype=python 3# 4 5## 6# = Virtio devices 7## 8 9## 10# @VirtioInfo: 11# 12# Basic information about a given VirtIODevice 13# 14# @path: The VirtIODevice's canonical QOM path 15# 16# @name: Name of the VirtIODevice 17# 18# Since: 7.2 |
19# | |
20## 21{ 'struct': 'VirtioInfo', 22 'data': { 'path': 'str', 23 'name': 'str' } } 24 25## 26# @x-query-virtio: 27# 28# Returns a list of all realized VirtIODevices 29# 30# Features: | 19## 20{ 'struct': 'VirtioInfo', 21 'data': { 'path': 'str', 22 'name': 'str' } } 23 24## 25# @x-query-virtio: 26# 27# Returns a list of all realized VirtIODevices 28# 29# Features: |
30# |
|
31# @unstable: This command is meant for debugging. 32# 33# Returns: List of gathered VirtIODevices 34# 35# Since: 7.2 36# 37# Example: 38# --- 16 unchanged lines hidden (view full) --- 55# "path": "/machine/peripheral-anon/device[1]/virtio-backend" 56# }, 57# { 58# "name": "virtio-serial", 59# "path": "/machine/peripheral-anon/device[0]/virtio-backend" 60# } 61# ] 62# } | 31# @unstable: This command is meant for debugging. 32# 33# Returns: List of gathered VirtIODevices 34# 35# Since: 7.2 36# 37# Example: 38# --- 16 unchanged lines hidden (view full) --- 55# "path": "/machine/peripheral-anon/device[1]/virtio-backend" 56# }, 57# { 58# "name": "virtio-serial", 59# "path": "/machine/peripheral-anon/device[0]/virtio-backend" 60# } 61# ] 62# } |
63# | |
64## | 63## |
65 | |
66{ 'command': 'x-query-virtio', 67 'returns': [ 'VirtioInfo' ], 68 'features': [ 'unstable' ] } 69 70## 71# @VhostStatus: 72# | 64{ 'command': 'x-query-virtio', 65 'returns': [ 'VirtioInfo' ], 66 'features': [ 'unstable' ] } 67 68## 69# @VhostStatus: 70# |
73# Information about a vhost device. This information will only be | 71# Information about a vhost device. This information will only be |
74# displayed if the vhost device is active. 75# 76# @n-mem-sections: vhost_dev n_mem_sections 77# 78# @n-tmp-sections: vhost_dev n_tmp_sections 79# 80# @nvqs: vhost_dev nvqs (number of virtqueues being used) 81# --- 11 unchanged lines hidden (view full) --- 93# 94# @backend-cap: vhost_dev backend_cap 95# 96# @log-enabled: vhost_dev log_enabled flag 97# 98# @log-size: vhost_dev log_size 99# 100# Since: 7.2 | 72# displayed if the vhost device is active. 73# 74# @n-mem-sections: vhost_dev n_mem_sections 75# 76# @n-tmp-sections: vhost_dev n_tmp_sections 77# 78# @nvqs: vhost_dev nvqs (number of virtqueues being used) 79# --- 11 unchanged lines hidden (view full) --- 91# 92# @backend-cap: vhost_dev backend_cap 93# 94# @log-enabled: vhost_dev log_enabled flag 95# 96# @log-size: vhost_dev log_size 97# 98# Since: 7.2 |
101# | |
102## | 99## |
103 | |
104{ 'struct': 'VhostStatus', 105 'data': { 'n-mem-sections': 'int', 106 'n-tmp-sections': 'int', 107 'nvqs': 'uint32', 108 'vq-index': 'int', 109 'features': 'VirtioDeviceFeatures', 110 'acked-features': 'VirtioDeviceFeatures', 111 'backend-features': 'VirtioDeviceFeatures', 112 'protocol-features': 'VhostDeviceProtocols', 113 'max-queues': 'uint64', 114 'backend-cap': 'uint64', 115 'log-enabled': 'bool', 116 'log-size': 'uint64' } } 117 118## 119# @VirtioStatus: 120# 121# Full status of the virtio device with most VirtIODevice members. | 100{ 'struct': 'VhostStatus', 101 'data': { 'n-mem-sections': 'int', 102 'n-tmp-sections': 'int', 103 'nvqs': 'uint32', 104 'vq-index': 'int', 105 'features': 'VirtioDeviceFeatures', 106 'acked-features': 'VirtioDeviceFeatures', 107 'backend-features': 'VirtioDeviceFeatures', 108 'protocol-features': 'VhostDeviceProtocols', 109 'max-queues': 'uint64', 110 'backend-cap': 'uint64', 111 'log-enabled': 'bool', 112 'log-size': 'uint64' } } 113 114## 115# @VirtioStatus: 116# 117# Full status of the virtio device with most VirtIODevice members. |
122# Also includes the full status of the corresponding vhost device 123# if the vhost device is active. | 118# Also includes the full status of the corresponding vhost device if 119# the vhost device is active. |
124# 125# @name: VirtIODevice name 126# 127# @device-id: VirtIODevice ID 128# 129# @vhost-started: VirtIODevice vhost_started flag 130# 131# @guest-features: VirtIODevice guest_features 132# 133# @host-features: VirtIODevice host_features 134# 135# @backend-features: VirtIODevice backend_features 136# 137# @device-endian: VirtIODevice device_endian 138# | 120# 121# @name: VirtIODevice name 122# 123# @device-id: VirtIODevice ID 124# 125# @vhost-started: VirtIODevice vhost_started flag 126# 127# @guest-features: VirtIODevice guest_features 128# 129# @host-features: VirtIODevice host_features 130# 131# @backend-features: VirtIODevice backend_features 132# 133# @device-endian: VirtIODevice device_endian 134# |
139# @num-vqs: VirtIODevice virtqueue count. This is the number of active 140# virtqueues being used by the VirtIODevice. | 135# @num-vqs: VirtIODevice virtqueue count. This is the number of 136# active virtqueues being used by the VirtIODevice. |
141# 142# @status: VirtIODevice configuration status (VirtioDeviceStatus) 143# 144# @isr: VirtIODevice ISR 145# 146# @queue-sel: VirtIODevice queue_sel 147# 148# @vm-running: VirtIODevice vm_running flag --- 9 unchanged lines hidden (view full) --- 158# @start-on-kick: VirtIODevice start_on_kick flag 159# 160# @disable-legacy-check: VirtIODevice disabled_legacy_check flag 161# 162# @bus-name: VirtIODevice bus_name 163# 164# @use-guest-notifier-mask: VirtIODevice use_guest_notifier_mask flag 165# | 137# 138# @status: VirtIODevice configuration status (VirtioDeviceStatus) 139# 140# @isr: VirtIODevice ISR 141# 142# @queue-sel: VirtIODevice queue_sel 143# 144# @vm-running: VirtIODevice vm_running flag --- 9 unchanged lines hidden (view full) --- 154# @start-on-kick: VirtIODevice start_on_kick flag 155# 156# @disable-legacy-check: VirtIODevice disabled_legacy_check flag 157# 158# @bus-name: VirtIODevice bus_name 159# 160# @use-guest-notifier-mask: VirtIODevice use_guest_notifier_mask flag 161# |
166# @vhost-dev: Corresponding vhost device info for a given VirtIODevice. 167# Present if the given VirtIODevice has an active vhost 168# device. | 162# @vhost-dev: Corresponding vhost device info for a given 163# VirtIODevice. Present if the given VirtIODevice has an active 164# vhost device. |
169# 170# Since: 7.2 | 165# 166# Since: 7.2 |
171# | |
172## | 167## |
173 | |
174{ 'struct': 'VirtioStatus', 175 'data': { 'name': 'str', 176 'device-id': 'uint16', 177 'vhost-started': 'bool', 178 'device-endian': 'str', 179 'guest-features': 'VirtioDeviceFeatures', 180 'host-features': 'VirtioDeviceFeatures', 181 'backend-features': 'VirtioDeviceFeatures', --- 15 unchanged lines hidden (view full) --- 197## 198# @x-query-virtio-status: 199# 200# Poll for a comprehensive status of a given virtio device 201# 202# @path: Canonical QOM path of the VirtIODevice 203# 204# Features: | 168{ 'struct': 'VirtioStatus', 169 'data': { 'name': 'str', 170 'device-id': 'uint16', 171 'vhost-started': 'bool', 172 'device-endian': 'str', 173 'guest-features': 'VirtioDeviceFeatures', 174 'host-features': 'VirtioDeviceFeatures', 175 'backend-features': 'VirtioDeviceFeatures', --- 15 unchanged lines hidden (view full) --- 191## 192# @x-query-virtio-status: 193# 194# Poll for a comprehensive status of a given virtio device 195# 196# @path: Canonical QOM path of the VirtIODevice 197# 198# Features: |
199# |
|
205# @unstable: This command is meant for debugging. 206# 207# Returns: VirtioStatus of the virtio device 208# 209# Since: 7.2 210# 211# Examples: 212# --- 215 unchanged lines hidden (view full) --- 428# "use-guest-notifier-mask": true, 429# "vm-running": true, 430# "queue-sel": 2, 431# "disabled": false, 432# "vhost-started": true, 433# "use-started": true 434# } 435# } | 200# @unstable: This command is meant for debugging. 201# 202# Returns: VirtioStatus of the virtio device 203# 204# Since: 7.2 205# 206# Examples: 207# --- 215 unchanged lines hidden (view full) --- 423# "use-guest-notifier-mask": true, 424# "vm-running": true, 425# "queue-sel": 2, 426# "disabled": false, 427# "vhost-started": true, 428# "use-started": true 429# } 430# } |
436# | |
437## | 431## |
438 | |
439{ 'command': 'x-query-virtio-status', 440 'data': { 'path': 'str' }, 441 'returns': 'VirtioStatus', 442 'features': [ 'unstable' ] } 443 444## 445# @VirtioDeviceStatus: 446# 447# A structure defined to list the configuration statuses of a virtio 448# device 449# 450# @statuses: List of decoded configuration statuses of the virtio | 432{ 'command': 'x-query-virtio-status', 433 'data': { 'path': 'str' }, 434 'returns': 'VirtioStatus', 435 'features': [ 'unstable' ] } 436 437## 438# @VirtioDeviceStatus: 439# 440# A structure defined to list the configuration statuses of a virtio 441# device 442# 443# @statuses: List of decoded configuration statuses of the virtio |
451# device | 444# device |
452# | 445# |
453# @unknown-statuses: Virtio device statuses bitmap that have not been decoded | 446# @unknown-statuses: Virtio device statuses bitmap that have not been 447# decoded |
454# 455# Since: 7.2 456## | 448# 449# Since: 7.2 450## |
457 | |
458{ 'struct': 'VirtioDeviceStatus', 459 'data': { 'statuses': [ 'str' ], 460 '*unknown-statuses': 'uint8' } } 461 462## 463# @VhostDeviceProtocols: 464# 465# A structure defined to list the vhost user protocol features of a 466# Vhost User device 467# 468# @protocols: List of decoded vhost user protocol features of a vhost | 451{ 'struct': 'VirtioDeviceStatus', 452 'data': { 'statuses': [ 'str' ], 453 '*unknown-statuses': 'uint8' } } 454 455## 456# @VhostDeviceProtocols: 457# 458# A structure defined to list the vhost user protocol features of a 459# Vhost User device 460# 461# @protocols: List of decoded vhost user protocol features of a vhost |
469# user device | 462# user device |
470# 471# @unknown-protocols: Vhost user device protocol features bitmap that | 463# 464# @unknown-protocols: Vhost user device protocol features bitmap that |
472# have not been decoded | 465# have not been decoded |
473# 474# Since: 7.2 475## | 466# 467# Since: 7.2 468## |
476 | |
477{ 'struct': 'VhostDeviceProtocols', 478 'data': { 'protocols': [ 'str' ], 479 '*unknown-protocols': 'uint64' } } 480 481## 482# @VirtioDeviceFeatures: 483# | 469{ 'struct': 'VhostDeviceProtocols', 470 'data': { 'protocols': [ 'str' ], 471 '*unknown-protocols': 'uint64' } } 472 473## 474# @VirtioDeviceFeatures: 475# |
484# The common fields that apply to most Virtio devices. Some devices | 476# The common fields that apply to most Virtio devices. Some devices |
485# may not have their own device-specific features (e.g. virtio-rng). 486# 487# @transports: List of transport features of the virtio device 488# 489# @dev-features: List of device-specific features (if the device has | 477# may not have their own device-specific features (e.g. virtio-rng). 478# 479# @transports: List of transport features of the virtio device 480# 481# @dev-features: List of device-specific features (if the device has |
490# unique features) | 482# unique features) |
491# 492# @unknown-dev-features: Virtio device features bitmap that have not | 483# 484# @unknown-dev-features: Virtio device features bitmap that have not |
493# been decoded | 485# been decoded |
494# 495# Since: 7.2 496## | 486# 487# Since: 7.2 488## |
497 | |
498{ 'struct': 'VirtioDeviceFeatures', 499 'data': { 'transports': [ 'str' ], 500 '*dev-features': [ 'str' ], 501 '*unknown-dev-features': 'uint64' } } 502 503## 504# @VirtQueueStatus: 505# --- 14 unchanged lines hidden (view full) --- 520# 521# @vring-desc: VirtQueue vring.desc (descriptor area) 522# 523# @vring-avail: VirtQueue vring.avail (driver area) 524# 525# @vring-used: VirtQueue vring.used (device area) 526# 527# @last-avail-idx: VirtQueue last_avail_idx or return of vhost_dev | 489{ 'struct': 'VirtioDeviceFeatures', 490 'data': { 'transports': [ 'str' ], 491 '*dev-features': [ 'str' ], 492 '*unknown-dev-features': 'uint64' } } 493 494## 495# @VirtQueueStatus: 496# --- 14 unchanged lines hidden (view full) --- 511# 512# @vring-desc: VirtQueue vring.desc (descriptor area) 513# 514# @vring-avail: VirtQueue vring.avail (driver area) 515# 516# @vring-used: VirtQueue vring.used (device area) 517# 518# @last-avail-idx: VirtQueue last_avail_idx or return of vhost_dev |
528# vhost_get_vring_base (if vhost active) | 519# vhost_get_vring_base (if vhost active) |
529# 530# @shadow-avail-idx: VirtQueue shadow_avail_idx 531# 532# @used-idx: VirtQueue used_idx 533# 534# @signalled-used: VirtQueue signalled_used 535# 536# @signalled-used-valid: VirtQueue signalled_used_valid flag 537# 538# Since: 7.2 | 520# 521# @shadow-avail-idx: VirtQueue shadow_avail_idx 522# 523# @used-idx: VirtQueue used_idx 524# 525# @signalled-used: VirtQueue signalled_used 526# 527# @signalled-used-valid: VirtQueue signalled_used_valid flag 528# 529# Since: 7.2 |
539# | |
540## | 530## |
541 | |
542{ 'struct': 'VirtQueueStatus', 543 'data': { 'name': 'str', 544 'queue-index': 'uint16', 545 'inuse': 'uint32', 546 'vring-num': 'uint32', 547 'vring-num-default': 'uint32', 548 'vring-align': 'uint32', 549 'vring-desc': 'uint64', --- 10 unchanged lines hidden (view full) --- 560# 561# Return the status of a given VirtIODevice's VirtQueue 562# 563# @path: VirtIODevice canonical QOM path 564# 565# @queue: VirtQueue index to examine 566# 567# Features: | 531{ 'struct': 'VirtQueueStatus', 532 'data': { 'name': 'str', 533 'queue-index': 'uint16', 534 'inuse': 'uint32', 535 'vring-num': 'uint32', 536 'vring-num-default': 'uint32', 537 'vring-align': 'uint32', 538 'vring-desc': 'uint64', --- 10 unchanged lines hidden (view full) --- 549# 550# Return the status of a given VirtIODevice's VirtQueue 551# 552# @path: VirtIODevice canonical QOM path 553# 554# @queue: VirtQueue index to examine 555# 556# Features: |
557# |
|
568# @unstable: This command is meant for debugging. 569# 570# Returns: VirtQueueStatus of the VirtQueue 571# | 558# @unstable: This command is meant for debugging. 559# 560# Returns: VirtQueueStatus of the VirtQueue 561# |
572# Notes: last_avail_idx will not be displayed in the case where 573# the selected VirtIODevice has a running vhost device and 574# the VirtIODevice VirtQueue index (queue) does not exist for 575# the corresponding vhost device vhost_virtqueue. Also, 576# shadow_avail_idx will not be displayed in the case where 577# the selected VirtIODevice has a running vhost device. | 562# Notes: last_avail_idx will not be displayed in the case where the 563# selected VirtIODevice has a running vhost device and the 564# VirtIODevice VirtQueue index (queue) does not exist for the 565# corresponding vhost device vhost_virtqueue. Also, 566# shadow_avail_idx will not be displayed in the case where the 567# selected VirtIODevice has a running vhost device. |
578# 579# Since: 7.2 580# 581# Examples: 582# 583# 1. Get VirtQueueStatus for virtio-vsock (vhost-vsock running) 584# 585# -> { "execute": "x-query-virtio-queue-status", --- 35 unchanged lines hidden (view full) --- 621# "queue-index": 20, 622# "last-avail-idx": 0, 623# "vring-used": 5182077248, 624# "used-idx": 0, 625# "shadow-avail-idx": 0, 626# "vring-num": 128 627# } 628# } | 568# 569# Since: 7.2 570# 571# Examples: 572# 573# 1. Get VirtQueueStatus for virtio-vsock (vhost-vsock running) 574# 575# -> { "execute": "x-query-virtio-queue-status", --- 35 unchanged lines hidden (view full) --- 611# "queue-index": 20, 612# "last-avail-idx": 0, 613# "vring-used": 5182077248, 614# "used-idx": 0, 615# "shadow-avail-idx": 0, 616# "vring-num": 128 617# } 618# } |
629# | |
630## | 619## |
631 | |
632{ 'command': 'x-query-virtio-queue-status', 633 'data': { 'path': 'str', 'queue': 'uint16' }, 634 'returns': 'VirtQueueStatus', 635 'features': [ 'unstable' ] } 636 637## 638# @VirtVhostQueueStatus: 639# --- 22 unchanged lines hidden (view full) --- 662# 663# @avail-size: vhost_virtqueue avail_size 664# 665# @used-phys: vhost_virtqueue used_phys (device area phys. addr.) 666# 667# @used-size: vhost_virtqueue used_size 668# 669# Since: 7.2 | 620{ 'command': 'x-query-virtio-queue-status', 621 'data': { 'path': 'str', 'queue': 'uint16' }, 622 'returns': 'VirtQueueStatus', 623 'features': [ 'unstable' ] } 624 625## 626# @VirtVhostQueueStatus: 627# --- 22 unchanged lines hidden (view full) --- 650# 651# @avail-size: vhost_virtqueue avail_size 652# 653# @used-phys: vhost_virtqueue used_phys (device area phys. addr.) 654# 655# @used-size: vhost_virtqueue used_size 656# 657# Since: 7.2 |
670# | |
671## | 658## |
672 | |
673{ 'struct': 'VirtVhostQueueStatus', 674 'data': { 'name': 'str', 675 'kick': 'int', 676 'call': 'int', 677 'desc': 'uint64', 678 'avail': 'uint64', 679 'used': 'uint64', 680 'num': 'int', --- 9 unchanged lines hidden (view full) --- 690# 691# Return information of a given vhost device's vhost_virtqueue 692# 693# @path: VirtIODevice canonical QOM path 694# 695# @queue: vhost_virtqueue index to examine 696# 697# Features: | 659{ 'struct': 'VirtVhostQueueStatus', 660 'data': { 'name': 'str', 661 'kick': 'int', 662 'call': 'int', 663 'desc': 'uint64', 664 'avail': 'uint64', 665 'used': 'uint64', 666 'num': 'int', --- 9 unchanged lines hidden (view full) --- 676# 677# Return information of a given vhost device's vhost_virtqueue 678# 679# @path: VirtIODevice canonical QOM path 680# 681# @queue: vhost_virtqueue index to examine 682# 683# Features: |
684# |
|
698# @unstable: This command is meant for debugging. 699# 700# Returns: VirtVhostQueueStatus of the vhost_virtqueue 701# 702# Since: 7.2 703# 704# Examples: 705# --- 37 unchanged lines hidden (view full) --- 743# "num": 128, 744# "call": 0, 745# "avail": 140141413582848, 746# "desc-phys": 5182259200, 747# "used": 140141413583168, 748# "kick": 0 749# } 750# } | 685# @unstable: This command is meant for debugging. 686# 687# Returns: VirtVhostQueueStatus of the vhost_virtqueue 688# 689# Since: 7.2 690# 691# Examples: 692# --- 37 unchanged lines hidden (view full) --- 730# "num": 128, 731# "call": 0, 732# "avail": 140141413582848, 733# "desc-phys": 5182259200, 734# "used": 140141413583168, 735# "kick": 0 736# } 737# } |
751# | |
752## | 738## |
753 | |
754{ 'command': 'x-query-virtio-vhost-queue-status', 755 'data': { 'path': 'str', 'queue': 'uint16' }, 756 'returns': 'VirtVhostQueueStatus', 757 'features': [ 'unstable' ] } 758 759## 760# @VirtioRingDesc: 761# 762# Information regarding the vring descriptor area 763# 764# @addr: Guest physical address of the descriptor area 765# 766# @len: Length of the descriptor area 767# 768# @flags: List of descriptor flags 769# 770# Since: 7.2 | 739{ 'command': 'x-query-virtio-vhost-queue-status', 740 'data': { 'path': 'str', 'queue': 'uint16' }, 741 'returns': 'VirtVhostQueueStatus', 742 'features': [ 'unstable' ] } 743 744## 745# @VirtioRingDesc: 746# 747# Information regarding the vring descriptor area 748# 749# @addr: Guest physical address of the descriptor area 750# 751# @len: Length of the descriptor area 752# 753# @flags: List of descriptor flags 754# 755# Since: 7.2 |
771# | |
772## | 756## |
773 | |
774{ 'struct': 'VirtioRingDesc', 775 'data': { 'addr': 'uint64', 776 'len': 'uint32', 777 'flags': [ 'str' ] } } 778 779## 780# @VirtioRingAvail: 781# 782# Information regarding the avail vring (a.k.a. driver area) 783# 784# @flags: VRingAvail flags 785# 786# @idx: VRingAvail index 787# 788# @ring: VRingAvail ring[] entry at provided index 789# 790# Since: 7.2 | 757{ 'struct': 'VirtioRingDesc', 758 'data': { 'addr': 'uint64', 759 'len': 'uint32', 760 'flags': [ 'str' ] } } 761 762## 763# @VirtioRingAvail: 764# 765# Information regarding the avail vring (a.k.a. driver area) 766# 767# @flags: VRingAvail flags 768# 769# @idx: VRingAvail index 770# 771# @ring: VRingAvail ring[] entry at provided index 772# 773# Since: 7.2 |
791# | |
792## | 774## |
793 | |
794{ 'struct': 'VirtioRingAvail', 795 'data': { 'flags': 'uint16', 796 'idx': 'uint16', 797 'ring': 'uint16' } } 798 799## 800# @VirtioRingUsed: 801# 802# Information regarding the used vring (a.k.a. device area) 803# 804# @flags: VRingUsed flags 805# 806# @idx: VRingUsed index 807# 808# Since: 7.2 | 775{ 'struct': 'VirtioRingAvail', 776 'data': { 'flags': 'uint16', 777 'idx': 'uint16', 778 'ring': 'uint16' } } 779 780## 781# @VirtioRingUsed: 782# 783# Information regarding the used vring (a.k.a. device area) 784# 785# @flags: VRingUsed flags 786# 787# @idx: VRingUsed index 788# 789# Since: 7.2 |
809# | |
810## | 790## |
811 | |
812{ 'struct': 'VirtioRingUsed', 813 'data': { 'flags': 'uint16', 814 'idx': 'uint16' } } 815 816## 817# @VirtioQueueElement: 818# 819# Information regarding a VirtQueue's VirtQueueElement including --- 5 unchanged lines hidden (view full) --- 825# 826# @descs: List of descriptors (VirtioRingDesc) 827# 828# @avail: VRingAvail info 829# 830# @used: VRingUsed info 831# 832# Since: 7.2 | 791{ 'struct': 'VirtioRingUsed', 792 'data': { 'flags': 'uint16', 793 'idx': 'uint16' } } 794 795## 796# @VirtioQueueElement: 797# 798# Information regarding a VirtQueue's VirtQueueElement including --- 5 unchanged lines hidden (view full) --- 804# 805# @descs: List of descriptors (VirtioRingDesc) 806# 807# @avail: VRingAvail info 808# 809# @used: VRingUsed info 810# 811# Since: 7.2 |
833# | |
834## | 812## |
835 | |
836{ 'struct': 'VirtioQueueElement', 837 'data': { 'name': 'str', 838 'index': 'uint32', 839 'descs': [ 'VirtioRingDesc' ], 840 'avail': 'VirtioRingAvail', 841 'used': 'VirtioRingUsed' } } 842 843## 844# @x-query-virtio-queue-element: 845# 846# Return the information about a VirtQueue's VirtQueueElement 847# 848# @path: VirtIODevice canonical QOM path 849# 850# @queue: VirtQueue index to examine 851# | 813{ 'struct': 'VirtioQueueElement', 814 'data': { 'name': 'str', 815 'index': 'uint32', 816 'descs': [ 'VirtioRingDesc' ], 817 'avail': 'VirtioRingAvail', 818 'used': 'VirtioRingUsed' } } 819 820## 821# @x-query-virtio-queue-element: 822# 823# Return the information about a VirtQueue's VirtQueueElement 824# 825# @path: VirtIODevice canonical QOM path 826# 827# @queue: VirtQueue index to examine 828# |
852# @index: Index of the element in the queue 853# (default: head of the queue) | 829# @index: Index of the element in the queue (default: head of the 830# queue) |
854# 855# Features: | 831# 832# Features: |
833# |
|
856# @unstable: This command is meant for debugging. 857# 858# Returns: VirtioQueueElement information 859# 860# Since: 7.2 861# 862# Examples: 863# --- 76 unchanged lines hidden (view full) --- 940# "ring": 19 941# }, 942# "used": { 943# "idx": 280, 944# "flags": 0 945# } 946# } 947# } | 834# @unstable: This command is meant for debugging. 835# 836# Returns: VirtioQueueElement information 837# 838# Since: 7.2 839# 840# Examples: 841# --- 76 unchanged lines hidden (view full) --- 918# "ring": 19 919# }, 920# "used": { 921# "idx": 280, 922# "flags": 0 923# } 924# } 925# } |
948# | |
949## | 926## |
950 | |
951{ 'command': 'x-query-virtio-queue-element', 952 'data': { 'path': 'str', 'queue': 'uint16', '*index': 'uint16' }, 953 'returns': 'VirtioQueueElement', 954 'features': [ 'unstable' ] } | 927{ 'command': 'x-query-virtio-queue-element', 928 'data': { 'path': 'str', 'queue': 'uint16', '*index': 'uint16' }, 929 'returns': 'VirtioQueueElement', 930 'features': [ 'unstable' ] } |