On Mon, Dec 06, 2021 at 07:13:49PM +0100, Christian Schoenebeck wrote: > On Montag, 6. Dezember 2021 17:09:45 CET Jonah Palmer wrote: > > On 12/6/21 08:50, Christian Schoenebeck wrote: > > > On Montag, 6. Dezember 2021 13:43:18 CET Jonah Palmer wrote: > > >> This series introduces new QMP/HMP commands to dump the status of a > > >> virtio device at different levels. > > >> > > >> [Jonah: Rebasing previous patchset from Nov. 10 (v9). Original patches > > >> > > >> are by Laurent Vivier from May 2020. > > >> > > >> Rebase from v9 to v10 includes reformatting virtio.json examples and > > >> command structures for better consistency. Also removed all enums from > > >> virtio.json and replaced their purpose with string literals. > > >> > > >> Removed @ndescs from VirtioQueueElement, as the number of descriptors > > >> can be inferred from the length of the @descs chain. > > >> > > >> Lastly, removed the examples in hmp-commands-info.hx to fix > > >> 'inconsistent > > >> literal block quoting' warning from Sphinx.] > > > > > > I have not followed the entire discussion. AFAICS this is intended to > > > monitor status information on virtio level only, like virtqueue fill > > > status, etc. > > > > > > One thing that I am looking for is monitoring device specific information > > > above virtio level, e.g. certain performance numbers or statistics that > > > only make sense for the specific device. That would not fit into any of > > > these commands, right? > > > > > > Best regards, > > > Christian Schoenebeck > > > > Correct. These are just one-shot commands that dump information on virtio > > devices (including vhosts), their virtqueues, and virtqueue elements as they > > are at the time of the command. > > > > Jonah > > What I would find useful though on this virtio level: also being able to > query > the maximum and average fill state of the two ring buffers of each virtqueue. > That would allow to identify performance bottlenecks. > > Best regards, > Christian Schoenebeck
Adding this to vhost would need some interface work though. Also, collecting these stats isn't free or trivial, so I imagine we would need commands to enable/disable data collection. -- MST