OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

virtio-comment message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: [PATCH v7 2/5] virtio-net: Add flow filter capabilities read commands


On Mon, Nov 27, 2023 at 11:50:24AM +0000, Parav Pandit wrote:
> 
> > From: Michael S. Tsirkin <mst@redhat.com>
> > Sent: Monday, November 27, 2023 5:10 PM
> > 
> > On Mon, Nov 27, 2023 at 11:33:45AM +0000, Parav Pandit wrote:
> > >
> > > > From: Michael S. Tsirkin <mst@redhat.com>
> > > > Sent: Monday, November 27, 2023 4:53 PM
> > > >
> > > > On Mon, Nov 27, 2023 at 10:19:47AM +0000, Parav Pandit wrote:
> > > > > > > > It appears that's not what you meant.
> > > > > > > > I can try and guess what you meant but I'd rather have you
> > > > > > > > rewrite this in a way that makes the meaning explicit.
> > > > > > > >
> > > > > > > If you insist, I can duplicate in driver requirements too.
> > > > > > > >
> > > > > > > > > There are many capabilities here each with a different use.
> > > > > > > >
> > > > > > > > And you are under the impression that dumping all kind of
> > > > > > > > stuff in a single place is good somehow?
> > > > > > > It is not dumped.
> > > > > > > It is structured based on the functionality.
> > > > > > > The config space proposal tends to dump everything in
> > > > > > > unstructured way at
> > > > > > single place that cannot extended elegantly.
> > > > > > >
> > > > > > > For example, Xuan's dynamic array cannot be placed next to
> > > > > > > other dynamic
> > > > > > array of flow filter.
> > > > > >
> > > > > > I don't know what "dynamic array" is exactly but generally, Any
> > > > > > kind of a big array is not appropriate in config space - I don't
> > > > > > see any of these
> > > > here, though.
> > > > > Ah, now I see the disconnect.
> > > > >
> > > > > There is.
> > > > > struct virtio_net_ctrl_ff_match_types
> > > >
> > > > Now I think I don't understand what this array does at all.
> > > > Why are there multiple entries with each entry also including a mask
> > > > of multiple fields?
> > > >
> > > Each entry indicates a bitmask of supported fields that can be filtered.
> > > The type indicates how to interpret each fields_map.
> > > Any new type for MPLS can be added easily by defining its type and mask.
> > > And same type enums and field mask also used by the data path too.
> > 
> > Oh wait I think I begin to remember now. There are 12 bits defined so far and
> > you made it this huge array. Right? With code to parse and format it all. Just
> > add a 64 bit field and it will last us long enough. No parsing and formatting just
> > #define.
> The infrastructure defines 12 bits only because this is first minimal viable work.
> There will be more fields to be added for more types.

Maybe.  Let's see a list and see if we even get close to 32 bits.

> It is not good to mix up all the fields and bit definitions.

Not good how?  It's definitely much simpler than what you wrote.
Does it matter that bits for a given transport are not all
consequitive? I do not see why it matters.


> And there are per device max limits which is way more than 12 bits.

These are just a couple of 32 bit fields.

-- 
MST



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]