From: "Michael S. Tsirkin" <mst@redhat.com>
To: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
Cc: virtio-dev@lists.oasis-open.org, jasowang@redhat.com
Subject: [virtio-dev] Re: [PATCH v10] virtio-net: support device stats
Date: Tue, 1 Mar 2022 07:44:56 -0500 [thread overview]
Message-ID: <20220301074209-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <1646137739.411392-1-xuanzhuo@linux.alibaba.com>
On Tue, Mar 01, 2022 at 08:28:59PM +0800, Xuan Zhuo wrote:
> On Tue, 1 Mar 2022 07:25:16 -0500, "Michael S. Tsirkin" <mst@redhat.com> wrote:
> > On Tue, Mar 01, 2022 at 07:32:23PM +0800, Xuan Zhuo wrote:
> > >
> > > I have to say, this design is really good.
> > >
> > > I think one of the core points of your design is to separate drop stats, gso
> > > stats, etc. Get the stats you want based on negotiation and needs. And covering
> > > the control queue, I am very surprised.
> > >
> > > But does this design solve the problem of expansion? Various stats independent
> > > structures seem to be convenient for expansion. But is this expansion ready for
> > > dynamic negotiation?
> >
> > For negotiation, we can either separate feature flags for each supported
> > type, or do like RSS and add commands for querying supported types
> > and enabling stats collection. Features is probably easier
> > for now ... Also, do we need to enable/disable stat collection?
>
> I think you mean dynamic enable/disable it. There is no such requirement in our
> environment. Since the statistical overhead is very small, I think there is no
> need to dynamically disable it.
>
> But I thought it would be interesting to support clearing. It would be useful in
> some debugging scenarios. :)
clearing would then need to be atomic. how would userspace invoke it?
anyway, we can add this later.
> >
> >
> >
> > > My earliest solution is dynamic negotiation, that is, the driver tells the
> > > device how many stats it wants to get. And the device negotiates how many stats
> > > it should give to the driver based on this information of the driver.
> > >
> > > But that's not great for migration. So gave up. @Jason
> >
> > Any optional feature is problematic for migration, at least with
> > features device knows ahead of the time what does driver
> > want to use.
>
>
> I want to make it clear that we will expand stats based on new features or new
> commands. So as long as we split up each stats for future expansion, it will be
> ok.
>
> I will reorganize a copy based on your design and send it out tomorrow.
>
> Thank you for your help and patience.
>
> >
> > --
> > MST
> >
---------------------------------------------------------------------
To unsubscribe, e-mail: virtio-dev-unsubscribe@lists.oasis-open.org
For additional commands, e-mail: virtio-dev-help@lists.oasis-open.org
next prev parent reply other threads:[~2022-03-01 12:45 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-03-01 8:34 [virtio-dev] [PATCH v10] virtio-net: support device stats Xuan Zhuo
2022-03-01 11:05 ` [virtio-dev] " Michael S. Tsirkin
2022-03-01 11:32 ` Xuan Zhuo
2022-03-01 12:25 ` Michael S. Tsirkin
2022-03-01 12:28 ` Xuan Zhuo
2022-03-01 12:44 ` Michael S. Tsirkin [this message]
2022-03-02 3:30 ` Jason Wang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220301074209-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=jasowang@redhat.com \
--cc=virtio-dev@lists.oasis-open.org \
--cc=xuanzhuo@linux.alibaba.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.