From: Shahaf Shuler <shahafs@mellanox.com>
To: Olivier Matz <olivier.matz@6wind.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>,
"Andrew Rybchenko" <arybchenko@solarflare.com>,
"Bruce Richardson" <bruce.richardson@intel.com>,
"Wang, Haiyue" <haiyue.wang@intel.com>,
"Jerin Jacob Kollanukkaran" <jerinj@marvell.com>,
"Wiles, Keith" <keith.wiles@intel.com>,
"Ananyev, Konstantin" <konstantin.ananyev@intel.com>,
"Morten Brørup" <mb@smartsharesystems.com>,
"Stephen Hemminger" <stephen@networkplumber.org>,
"Thomas Monjalon" <thomas@monjalon.net>
Subject: Re: [dpdk-dev] [PATCH v2] mbuf: support dynamic fields and flags
Date: Thu, 24 Oct 2019 04:54:20 +0000 [thread overview]
Message-ID: <AM0PR0502MB37957D05F0AD18558D40CE67C36A0@AM0PR0502MB3795.eurprd05.prod.outlook.com> (raw)
In-Reply-To: <20191023133335.GM25286@glumotte.dev.6wind.com>
Wednesday, October 23, 2019 4:34 PM, Olivier Matz:
> Subject: Re: [dpdk-dev] [PATCH v2] mbuf: support dynamic fields and flags
>
> Hi Shahaf,
>
> On Wed, Oct 23, 2019 at 12:00:30PM +0000, Shahaf Shuler wrote:
> > Hi Olivier,
> >
> > Thursday, October 17, 2019 5:42 PM, Olivier Matz:
> > > Subject: [dpdk-dev] [PATCH v2] mbuf: support dynamic fields and
> > > flags
> > >
> > > Many features require to store data inside the mbuf. As the room in
> > > mbuf structure is limited, it is not possible to have a field for
> > > each feature. Also, changing fields in the mbuf structure can break the
> API or ABI.
> > >
> > > This commit addresses these issues, by enabling the dynamic
> > > registration of fields or flags:
> > >
> > > - a dynamic field is a named area in the rte_mbuf structure, with a
> > > given size (>= 1 byte) and alignment constraint.
> > > - a dynamic flag is a named bit in the rte_mbuf structure.
> > >
> > > The typical use case is a PMD that registers space for an offload
> > > feature, when the application requests to enable this feature. As
> > > the space in mbuf is limited, the space should only be reserved if
> > > it is going to be used (i.e when the application explicitly asks for it).
> >
> > According to description, the dynamic field enables custom application and
> supported PMDs to use the dynamic part of the mbuf for their specific
> needs.
> > However the mechanism to report and activate the field/flag registration
> comes from the general OFFLOAD flags.
> >
> > Maybe it will be better to an option to query and select dynamic fields for
> PMD outside of the standard ethdev offload flags?
>
> It is not mandatory to use the ethdev layer to register a dynamic field or flag
> in the mbuf. It is just the typical use case.
>
> It can also be enabled when using a library that have specific needs, for
> instance, you call rte_reorder_init(), and it will register the sequence number
> dynamic field.
>
> An application that requires a specific mbuf field can also do the registration
> by itself.
>
> In other words, when you initialize a subpart that needs a dynamic field or
> flag, you have to do the registration there.
>
I guess my question mainly targets one of the use cases for dynamic mbuf fields which is vendor specific offloads.
On such case we would like to have dynamic fields/flags negotiated between the application and PMD.
The question is whether we provide a unified way for application to query PMD specific dynamic fields or we let PMD vendor to implement this handshake as they wish (devargs, through PMD doc, etc..)
next prev parent reply other threads:[~2019-10-24 4:54 UTC|newest]
Thread overview: 64+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-07-10 9:29 [dpdk-dev] [RFC] " Olivier Matz
2019-07-10 17:14 ` Wang, Haiyue
2019-07-11 7:26 ` Olivier Matz
2019-07-11 8:04 ` Wang, Haiyue
2019-07-11 8:20 ` Olivier Matz
2019-07-11 8:34 ` Wang, Haiyue
2019-07-11 15:31 ` Stephen Hemminger
2019-07-12 9:18 ` Olivier Matz
2019-07-10 17:49 ` Stephen Hemminger
2019-07-10 18:12 ` Wiles, Keith
2019-07-11 7:53 ` Olivier Matz
2019-07-11 14:37 ` Wiles, Keith
2019-07-12 9:06 ` Olivier Matz
2019-07-11 7:36 ` Olivier Matz
2019-07-12 12:23 ` Jerin Jacob Kollanukkaran
2019-07-16 9:39 ` Olivier Matz
2019-07-16 14:43 ` Stephen Hemminger
2019-07-11 9:24 ` Thomas Monjalon
2019-07-12 14:54 ` Andrew Rybchenko
2019-07-16 9:49 ` Olivier Matz
2019-07-16 11:31 ` [dpdk-dev] ***Spam*** " Andrew Rybchenko
2019-09-18 16:54 ` [dpdk-dev] [PATCH] " Olivier Matz
2019-09-21 4:54 ` Wang, Haiyue
2019-09-23 8:31 ` Olivier Matz
2019-09-23 11:01 ` Wang, Haiyue
2019-09-21 8:28 ` Wiles, Keith
2019-09-23 8:56 ` Morten Brørup
2019-09-23 9:41 ` Olivier Matz
2019-09-23 9:13 ` Olivier Matz
2019-09-23 15:14 ` Wiles, Keith
2019-09-23 16:16 ` Olivier Matz
2019-09-23 17:14 ` Wiles, Keith
2019-09-23 16:09 ` Wiles, Keith
2019-10-01 10:49 ` Ananyev, Konstantin
2019-10-17 7:54 ` Olivier Matz
2019-10-17 11:58 ` Ananyev, Konstantin
2019-10-17 12:58 ` Olivier Matz
2019-10-17 14:42 ` [dpdk-dev] [PATCH v2] " Olivier Matz
2019-10-18 2:47 ` Wang, Haiyue
2019-10-18 7:53 ` Olivier Matz
2019-10-18 8:28 ` Wang, Haiyue
2019-10-18 9:47 ` Olivier Matz
2019-10-18 11:24 ` Wang, Haiyue
2019-10-22 22:51 ` Ananyev, Konstantin
2019-10-23 3:16 ` Wang, Haiyue
2019-10-23 10:21 ` Olivier Matz
2019-10-23 15:00 ` Stephen Hemminger
2019-10-23 15:12 ` Wang, Haiyue
2019-10-23 10:19 ` Olivier Matz
2019-10-23 11:45 ` Olivier Matz
2019-10-23 11:49 ` Ananyev, Konstantin
2019-10-23 12:00 ` Shahaf Shuler
2019-10-23 13:33 ` Olivier Matz
2019-10-24 4:54 ` Shahaf Shuler [this message]
2019-10-24 7:07 ` Olivier Matz
2019-10-24 7:38 ` Slava Ovsiienko
2019-10-24 7:56 ` Olivier Matz
2019-10-24 8:13 ` [dpdk-dev] [PATCH v3] " Olivier Matz
2019-10-24 15:30 ` Stephen Hemminger
2019-10-24 15:44 ` Thomas Monjalon
2019-10-24 17:07 ` Stephen Hemminger
2019-10-24 16:40 ` Thomas Monjalon
2019-10-26 12:39 ` [dpdk-dev] [PATCH v4] " Olivier Matz
2019-10-26 17:04 ` Thomas Monjalon
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=AM0PR0502MB37957D05F0AD18558D40CE67C36A0@AM0PR0502MB3795.eurprd05.prod.outlook.com \
--to=shahafs@mellanox.com \
--cc=arybchenko@solarflare.com \
--cc=bruce.richardson@intel.com \
--cc=dev@dpdk.org \
--cc=haiyue.wang@intel.com \
--cc=jerinj@marvell.com \
--cc=keith.wiles@intel.com \
--cc=konstantin.ananyev@intel.com \
--cc=mb@smartsharesystems.com \
--cc=olivier.matz@6wind.com \
--cc=stephen@networkplumber.org \
--cc=thomas@monjalon.net \
/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;
as well as URLs for NNTP newsgroup(s).