All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Parav Pandit <parav@nvidia.com>
Cc: "virtio-comment@lists.oasis-open.org"
	<virtio-comment@lists.oasis-open.org>,
	Shahaf Shuler <shahafs@nvidia.com>,
	"virtio@lists.oasis-open.org" <virtio@lists.oasis-open.org>
Subject: Re: [virtio-comment] [PATCH requirements 1/7] net-features: Add requirements document for release 1.4
Date: Tue, 6 Jun 2023 19:18:06 -0400	[thread overview]
Message-ID: <20230606191055-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <PH0PR12MB5481C7FC00041476C73C3A74DC52A@PH0PR12MB5481.namprd12.prod.outlook.com>

On Tue, Jun 06, 2023 at 11:08:12PM +0000, Parav Pandit wrote:
> 
> 
> > From: virtio-comment@lists.oasis-open.org <virtio-comment@lists.oasis-
> > open.org> On Behalf Of Michael S. Tsirkin
> > Sent: Tuesday, June 6, 2023 6:57 PM
> 
> > > It matters for requirements, so we produce design that addresses it.
> > > We don't want to add config space every growing bit map which may be
> > different between different devices.
> > 
> > then say that you want to conserve config space, that is the requirement. not
> > cvq specifically.
> >
> Well in one meeting you specifically told that requirements and design to be combined together, so it is drafted this way.
> Instead of very abstract like "conserve config space".
> 
> We can debate and change from cvq to new cfgvq as part of the journey.
> It is fine.

just don't keep listing this in each feature. my plan is to work
on cfgvq so we can keep using config space without these
limitations.

> > > >
> > > > what matters is whether they have to be synchronized with a given
> > > > queue - I get it they don't have to.
> > > They don't have to be.
> > 
> > Then say that.
> >
> I thought this is very obvious as querying counter is hundred-time slower operation than packet processing.
>  
> > > I don't see how it can be every synchronized.
> > 
> > you could program them through the vq itself.
> > 
> Do you mean in the packet transmit and receive completions itself?
> It would be too heavy to do so to mix the control fields in the data path.

maybe. but notice how you have a specific design in mind so you are jumping ahead.
you asked how we could make these synch, i told you how.
the actual point is you want to say "we don't need this synchronous",
design idea: use cvq


> > > > we don't cover migration currently don't see how this is a spec rquirement.
> > > > unless maybe it's justification for 4?
> > > True, but design need to keep this in mind if it has some touch points like of
> > #4 so when migration arrives, it has the building block in place.
> > 
> > so again, let's make sure we capture the actual spec requirement.
> >
> It is an actual spec requirement to be done and drafted in the spec.
> We may not do everything in the first phase, this are the broad requirements.
> And in design, we will say, requirement #4 is phase 2.

yes but this one I don't know what it means, spec wise.
some kind of block? what for?

> > 
> > > > so maybe it means there needs to be a way to set counters?
> > > > so there's no need to mention migration - just that it should be
> > > > possible to move counters between devices.
> > > >
> > > > > +4. If a virtio device is group member device, a group owner should be
> > able
> > > > > +   to query all the counter attributes using the admin queue command
> > which
> > > > > +   a virtio device will expose via a control vq to the driver.
> > > >
> > > >
> > > > this seems weirdly specific.
> > > > what is the actual requirement?
> > > >
> > > I don't follow the question.
> > > When a device migrates from src to dst, group owner needs to know if both
> > side underlying member device has same counter attributes or not.
> > 
> > whether it's through a command or not is not a requirement and I still do not
> > know what the requirement is.
> > what does "same counter attributes" mean? you never mentioned attributes
> > before.
> >
> I will refine this further and drop the word "attribute".
> If device support X counters, group owner should be able to know this bitmap.

i guess device might only support part of counters then?

> > > Yes, will change the GUEST surfaced from the current F_GUEST terminology of
> > the net device.
> > 
> > So?  this predates 1.x spec we never bothered changing them.
> >
> Will remove the guest wording and will change to transmit and receive.
> 
>  
> > > > > +4. le64 rx_pkts: Total packets received by the device
> > > >
> > > > including dropped ones or not?
> > > >
> > > Not including. Will add this clarification further in v1.
> > >
> > > > > +
> > > > > +### 3.1.2 Per transmit queue counters 1. le64 tx_bad_desc_errors:
> > > > > +Descriptors dropped by the device due to errors in
> > > > > +   descriptors
> > > >
> > > > since when do we drop packets on error in descriptor?
> > > > we just as likely stall ...
> > > >
> > > It is left to the device to implement on what to do on bad desc.
> > 
> > then how can you count drops? 
> A device may count the drops based on errors.
> It is counting drops based on the error it got.
> 
> > why does this even matter?
> To debug.

for debugging it's easiest if you just stop the vq, instead of drops.

> > and why on tx specifically?
> Missed the rx, will add.
> 
> > I feel addressing descriptor errors is a completely separate project.
> 
> Not sure if it is that big project.

I would have a separate debug section.

-- 
MST


This publicly archived list offers a means to provide input to the
OASIS Virtual I/O Device (VIRTIO) TC.

In order to verify user consent to the Feedback License terms and
to minimize spam in the list archive, subscription is required
before posting.

Subscribe: virtio-comment-subscribe@lists.oasis-open.org
Unsubscribe: virtio-comment-unsubscribe@lists.oasis-open.org
List help: virtio-comment-help@lists.oasis-open.org
List archive: https://lists.oasis-open.org/archives/virtio-comment/
Feedback License: https://www.oasis-open.org/who/ipr/feedback_license.pdf
List Guidelines: https://www.oasis-open.org/policies-guidelines/mailing-lists
Committee: https://www.oasis-open.org/committees/virtio/
Join OASIS: https://www.oasis-open.org/join/


  reply	other threads:[~2023-06-06 23:18 UTC|newest]

Thread overview: 63+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-01 22:02 [virtio-comment] [PATCH requirements 0/7] virtio net new features requirements Parav Pandit
2023-06-01 22:02 ` [virtio-comment] [PATCH requirements 1/7] net-features: Add requirements document for release 1.4 Parav Pandit
2023-06-06 22:15   ` Michael S. Tsirkin
2023-06-06 22:28     ` Parav Pandit
2023-06-06 22:56       ` Michael S. Tsirkin
2023-06-06 23:08         ` Parav Pandit
2023-06-06 23:18           ` Michael S. Tsirkin [this message]
2023-06-07  9:03             ` [virtio-comment] Re: [virtio] " Xuan Zhuo
2023-06-07 20:35           ` Michael S. Tsirkin
2023-06-07 20:39             ` Parav Pandit
2023-06-07 20:50               ` Michael S. Tsirkin
2023-06-07 20:53                 ` Parav Pandit
2023-06-07  9:31   ` Xuan Zhuo
2023-06-01 22:03 ` [virtio-comment] [PATCH requirements 2/7] net-features: Add low latency transmit queue requirements Parav Pandit
2023-06-06 22:25   ` Michael S. Tsirkin
2023-06-06 22:35     ` Parav Pandit
2023-06-01 22:03 ` [virtio-comment] [PATCH requirements 3/7] net-features: Add low latency receive " Parav Pandit
2023-06-06 22:33   ` Michael S. Tsirkin
2023-06-06 22:44     ` Parav Pandit
2023-06-06 23:03       ` Michael S. Tsirkin
2023-06-01 22:03 ` [virtio-comment] [PATCH requirements 4/7] net-features: Add notification coalescing requirements Parav Pandit
2023-06-06 22:36   ` Michael S. Tsirkin
2023-06-06 22:46     ` Parav Pandit
2023-06-06 23:06       ` Michael S. Tsirkin
2023-06-01 22:03 ` [virtio-comment] [PATCH requirements 5/7] net-features: Add n-tuple receive flow steering requirements Parav Pandit
2023-06-02  3:35   ` Heng Qi
2023-06-02  3:51     ` Parav Pandit
2023-06-02  4:39       ` [virtio-comment] Re: [virtio] " Heng Qi
2023-06-06 12:08         ` Heng Qi
2023-06-06 21:49           ` [virtio-comment] " Parav Pandit
2023-06-12 14:35             ` [virtio-comment] " Heng Qi
2023-06-12 17:26               ` [virtio-comment] " Parav Pandit
2023-06-13  2:28                 ` Heng Qi
2023-06-13  8:57                 ` [virtio-comment] " Michael S. Tsirkin
2023-06-13  9:16                   ` Cornelia Huck
2023-06-13 11:33                   ` [virtio-comment] " Parav Pandit
2023-06-07  2:47   ` Jason Wang
2023-06-07  3:22     ` Parav Pandit
2023-06-13  2:57   ` [virtio-comment] Re: [virtio] " Heng Qi
2023-06-13  4:16     ` [virtio-comment] " Parav Pandit
2023-06-13  5:04       ` [virtio-comment] " Heng Qi
2023-06-13 12:24         ` [virtio-comment] " Parav Pandit
2023-06-14  3:43           ` [virtio-comment] " Heng Qi
2023-06-14  3:48             ` [virtio-comment] " Parav Pandit
2023-06-14  3:53               ` Heng Qi
2023-06-01 22:03 ` [virtio-comment] [PATCH requirements 6/7] net-features: Add packet timestamp requirements Parav Pandit
2023-06-06 22:40   ` Michael S. Tsirkin
2023-06-06 22:51     ` Parav Pandit
2023-06-06 23:08       ` Michael S. Tsirkin
2023-06-01 22:03 ` [virtio-comment] [PATCH requirements 7/7] net-features: Add header data split requirements Parav Pandit
2023-06-06 22:41   ` Michael S. Tsirkin
2023-06-08 14:57     ` Parav Pandit
2023-06-02  3:06 ` [virtio-comment] Re: [virtio] [PATCH requirements 0/7] virtio net new features requirements Heng Qi
2023-06-06 22:49 ` [virtio-comment] " Michael S. Tsirkin
2023-06-06 22:56   ` Parav Pandit
2023-06-06 23:10     ` Michael S. Tsirkin
2023-06-07  2:49 ` Jason Wang
2023-06-07  3:33   ` Parav Pandit
  -- strict thread matches above, loose matches on Subject: below --
2023-07-24  3:34 Parav Pandit
2023-07-24  3:34 ` [virtio-comment] [PATCH requirements 1/7] net-features: Add requirements document for release 1.4 Parav Pandit
2023-08-08  8:16   ` David Edmondson
2023-08-14  5:17     ` Parav Pandit
2023-08-14 11:53       ` David Edmondson
2023-08-14 11:56   ` David Edmondson

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=20230606191055-mutt-send-email-mst@kernel.org \
    --to=mst@redhat.com \
    --cc=parav@nvidia.com \
    --cc=shahafs@nvidia.com \
    --cc=virtio-comment@lists.oasis-open.org \
    --cc=virtio@lists.oasis-open.org \
    /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.