[virtio-dev] RE: About custom device counter

Parav Pandit
2023-06-13T01:57:48Z

> From: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
> Sent: Monday, June 12, 2023 2:13 AM
>
> We hope to support device custom counter. That is, virtio spec provides a
> channel for driver and device, and both key and value are provided by device.
>
> We discussed this issue earlier, and after some internal practice, I think it is still
> necessary to discuss this again.
>
> It is very important, each cloud vendor will always have some special counters,
> these counters may not exist in another vendor. At the same time, if we have to
> discuss it in the spec every time we add a counter, or add a feature, I think it is
> very inconvenient. Manufacturers may add some new counters at any time
> based on some new requirements. Some counters may also be removed at any
> time.
>
Debug counters are useful to have.
I agree that they may be vendor specific.
We often try to abstract and define as much as vendor neutral as possible.

So we should probably first put our efforts to see if more than one vendor can use it.

Assuming there is some vendor specific counters, I imagine to come from a separate vendor specific query command.
This is to keep standard counters to avoid mixing with vend_specific.

> Of course I know that doing this might hurt migration. But what I want to say is,
> why does it affect live migration? These counters we plan to give to users
> through ethtool -S, and some changes have taken place in the ethtool counters
> output by users. Does this have any practical impact? Or do we directly use
> some other output in a way, we can clearly tell the user that these counters may
> change during the migration process. For example, the driver is migrated to
> some new devices. These devices support some new counters. I think users
> should be able to see these new counters. These new counters may be the
> purpose of the migration.

Counters which are well defined non-vendor specific should be able to migrate to destination on best effort basis.
For well defined counters if device A at src support N counters, on migrated destination, it should be N.
This should be able to achieve with feature provisioning infra via group owner command.

>
> We don't need to support live migration at this point.
When done on best effort level, infra exists, vendor has ability to incrementally implement it.