Discussion of the implementations of VIRTIO specification
 help / color / mirror / Atom feed
From: Halil Pasic <pasic@linux.ibm.com>
To: Parav Pandit <parav@nvidia.com>
Cc: "mst@redhat.com" <mst@redhat.com>,
	"virtio-dev@lists.oasis-open.org"
	<virtio-dev@lists.oasis-open.org>,
	"virtio-comment@lists.oasis-open.org"
	<virtio-comment@lists.oasis-open.org>,
	"si-wei.liu@oracle.com" <si-wei.liu@oracle.com>,
	Halil Pasic <pasic@linux.ibm.com>
Subject: Re: [virtio-comment] [PATCH v10] virtio-net: Clarify VLAN filter table configuration
Date: Thu, 26 Jan 2023 12:48:52 +0100	[thread overview]
Message-ID: <20230126124852.549102a6.pasic@linux.ibm.com> (raw)
In-Reply-To: <PH0PR12MB548193F9D20E6C75CE29E3B4DCCE9@PH0PR12MB5481.namprd12.prod.outlook.com>

On Wed, 25 Jan 2023 19:09:28 +0000
Parav Pandit <parav@nvidia.com> wrote:

> > Would just
> > "When VIRTIO_NET_F_CTRL_VLAN is not negotiated, no VLAN filtering is done
> > by the device."
> > work?
> >  
> This is also fine.
> However, I prefer the current spec terminology used in mac, promiscuous etc area such as "receive/accept/drop".
> It is lot clearer to understand in steering world.
> And it also aligns to the steering tools such as tc [3] which defines the action as "drop/mirred/redirect" etc.

My problem is not the word accept itself. Let me try to explain it once
again, now that we have gotten rid of the confusing "as per device
configuration". Now our sentence looks like this.

When VIRTIO_NET_F_CTRL_VLAN is not negotiated, the device MUST accept
all VLAN tagged packets.

Let us analyze it. 
Predicate: "MUST accept"
Object: "all VLAN tagged packets"
Subject: "the device"

Compare that to man 8 tc. There they make it clear that there may
the things like the next filter, and that those are comprised of
actions. 

I think, in a system with multiple filters, it is a very different
piece of cake stating that a:
* A certain filter accepts an input.
* The whole system accepts an input.

If in our sentence the subject where not the "the device" but
something like "the VLAN filtering facility" or you name it,
I would be fine with that.

But when without the corresponding domain knowledge, the device
MUST accept sounds like the driver of an conforming device will see that
packet. I.e. the device dropping that very same packet for a different
reason is not possible without violating that normative.

Of course with enough domain knowledge, one would know that we didn't
really mean that the "the packet must be accepted by the device" but
rather that the "VLAN filtering mechanism is not allowed to drop the
give packet". Because the former makes no sense.

In the end, I believe the target audience of this document does have
the domain knowledge to deal with the situation. But I prefer normative
statement that don't lend themselves to misinterpretation.

Regards,
Halil



> 
> Hence, lets keep
> "When VIRTIO_NET_F_CTRL_VLAN is not negotiated, the device MUST accept all VLAN tagged packets"
> 
> This way spec language is same for negotiated/non-negotiated case of accept/drop etc.


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/


  parent reply	other threads:[~2023-01-26 11:48 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-12 21:25 [virtio-comment] [PATCH v10] virtio-net: Clarify VLAN filter table configuration Parav Pandit
2023-01-19 18:35 ` [virtio-comment] " Parav Pandit
2023-01-25 18:04 ` [virtio-comment] " Halil Pasic
2023-01-25 19:09   ` [virtio-dev] " Parav Pandit
2023-01-25 20:31     ` [virtio-dev] " Michael S. Tsirkin
2023-01-25 20:36       ` [virtio-dev] " Parav Pandit
2023-01-26 11:48     ` Halil Pasic [this message]
2023-01-26 16:17       ` Parav Pandit
2023-01-26 16:27         ` Michael S. Tsirkin
2023-01-25 20:55   ` Michael S. Tsirkin
2023-01-25 23:30     ` Parav Pandit
2023-01-25 23:46       ` Parav Pandit
2023-01-26  0:46         ` [virtio-dev] " Si-Wei Liu
2023-01-26  5:01         ` Michael S. Tsirkin
2023-01-26  5:07         ` Michael S. Tsirkin
2023-01-26 16:27           ` Parav Pandit
2023-01-26 16:31             ` Michael S. Tsirkin
2023-01-26 16:42               ` Parav Pandit
2023-01-26 17:15                 ` Michael S. Tsirkin

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=20230126124852.549102a6.pasic@linux.ibm.com \
    --to=pasic@linux.ibm.com \
    --cc=mst@redhat.com \
    --cc=parav@nvidia.com \
    --cc=si-wei.liu@oracle.com \
    --cc=virtio-comment@lists.oasis-open.org \
    --cc=virtio-dev@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox