All of lore.kernel.org
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc
@ 2021-06-17  9:17 Raslan Darawsheh
  2021-06-22  7:27 ` Singh, Aman Deep
                   ` (2 more replies)
  0 siblings, 3 replies; 16+ messages in thread
From: Raslan Darawsheh @ 2021-06-17  9:17 UTC (permalink / raw)
  To: dev
  Cc: ferruh.yigit, orika, andrew.rybchenko, ivan.malov, ying.a.wang,
	olivier.matz, viacheslavo, shirik

Define new rte header for gtp PDU session container
based on RFC 38415-g30

Signed-off-by: Raslan Darawsheh <rasland@nvidia.com>
---
v6 : fixed typos
     fixed indentation of comments for fields
---
 lib/net/rte_gtp.h | 78 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 78 insertions(+)

diff --git a/lib/net/rte_gtp.h b/lib/net/rte_gtp.h
index 6a6f9b238d..9f6deb9c7e 100644
--- a/lib/net/rte_gtp.h
+++ b/lib/net/rte_gtp.h
@@ -61,6 +61,84 @@ struct rte_gtp_hdr_ext_word {
 	uint8_t next_ext;     /**< Next Extension Header Type. */
 }  __rte_packed;
 
+/**
+ * Optional extension for GTP with next_ext set to 0x85
+ * defined based on RFC 38415-g30.
+ */
+__extension__
+struct rte_gtp_psc_generic_hdr {
+	uint8_t ext_hdr_len;	/**< PDU ext hdr len in multiples of 4 bytes */
+#if RTE_BYTE_ORDER == RTE_BIG_ENDIAN
+	uint8_t type:4;		/**< PDU type */
+	uint8_t qmp:1;		/**< Qos Monitoring Packet */
+	uint8_t pad:3;		/**< type specific pad bits */
+	uint8_t spare:2;	/**< type specific spare bits */
+	uint8_t qfi:6;		/**< Qos Flow Identifier */
+#else
+	uint8_t qfi:6;		/**< Qos Flow Identifier */
+	uint8_t spare:2;	/**< type specific spare bits */
+	uint8_t pad:3;		/**< type specific pad bits */
+	uint8_t qmp:1;		/**< Qos Monitoring Packet */
+	uint8_t type:4;		/**< PDU type */
+#endif
+	uint8_t data[0];	/**< variable length data fields */
+} __rte_packed;
+
+/**
+ * Optional extension for GTP with next_ext set to 0x85
+ * type0 defined based on RFC 38415-g30
+ */
+__extension__
+struct rte_gtp_psc_type0_hdr {
+	uint8_t ext_hdr_len;	/**< PDU ext hdr len in multiples of 4 bytes */
+#if RTE_BYTE_ORDER == RTE_BIG_ENDIAN
+	uint8_t type:4;		/**< PDU type */
+	uint8_t qmp:1;		/**< Qos Monitoring Packet */
+	uint8_t snp:1;		/**< Sequence number presence */
+	uint8_t spare_dl1:2;	/**< spare down link bits */
+	uint8_t ppp:1;		/**< Paging policy presence */
+	uint8_t rqi:1;		/**< Reflective Qos Indicator */
+	uint8_t qfi:6;		/**< Qos Flow Identifier */
+#else
+	uint8_t qfi:6;		/**< Qos Flow Identifier */
+	uint8_t rqi:1;		/**< Reflective Qos Indicator */
+	uint8_t ppp:1;		/**< Paging policy presence */
+	uint8_t spare_dl1:2;	/**< spare down link bits */
+	uint8_t snp:1;		/**< Sequence number presence */
+	uint8_t type:4;		/**< PDU type */
+#endif
+	uint8_t data[0];	/**< variable length data fields */
+} __rte_packed;
+
+/**
+ * Optional extension for GTP with next_ext set to 0x85
+ * type1 defined based on RFC 38415-g30
+ */
+__extension__
+struct rte_gtp_psc_type1_hdr {
+	uint8_t ext_hdr_len;	/**< PDU ext hdr len in multiples of 4 bytes */
+#if RTE_BYTE_ORDER == RTE_BIG_ENDIAN
+	uint8_t type:4;		/**< PDU type */
+	uint8_t qmp:1;		/**< Qos Monitoring Packet */
+	uint8_t dl_delay_ind:1;	/**< dl delay result presence */
+	uint8_t ul_delay_ind:1;	/**< ul delay result presence */
+	uint8_t snp:1;		/**< Sequence number presence ul */
+	uint8_t n_delay_ind:1;	/**< N3/N9 delay result presence */
+	uint8_t spare_ul2:1;	/**< spare up link bits */
+	uint8_t qfi:6;		/**< Qos Flow Identifier */
+#else
+	uint8_t qfi:6;		/**< Qos Flow Identifier */
+	uint8_t spare_ul2:1;	/**< spare up link bits */
+	uint8_t n_delay_ind:1;	/**< N3/N9 delay result presence */
+	uint8_t snp:1;		/**< Sequence number presence ul */
+	uint8_t ul_delay_ind:1;	/**< ul delay result presence */
+	uint8_t dl_delay_ind:1;	/**< dl delay result presence */
+	uint8_t qmp:1;		/**< Qos Monitoring Packet */
+	uint8_t type:4;		/**< PDU type */
+#endif
+	uint8_t data[0];	/**< variable length data fields */
+} __rte_packed;
+
 /** GTP header length */
 #define RTE_ETHER_GTP_HLEN \
 	(sizeof(struct rte_udp_hdr) + sizeof(struct rte_gtp_hdr))
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc
  2021-06-17  9:17 [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc Raslan Darawsheh
@ 2021-06-22  7:27 ` Singh, Aman Deep
  2021-07-01 14:06   ` Andrew Rybchenko
  2021-07-08  9:26 ` Andrew Rybchenko
  2021-08-23 10:55 ` [dpdk-dev] [PATCH v7 0/2] update gtp psc to use net hdr Raslan Darawsheh
  2 siblings, 1 reply; 16+ messages in thread
From: Singh, Aman Deep @ 2021-06-22  7:27 UTC (permalink / raw)
  To: dev

Hi Raslan,

Can you please provide link to this RFC 38415-g30
I just had some doubt on byte-order conversion as per RFC 1700 
<https://tools.ietf.org/html/rfc1700>

Regards
Aman


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc
  2021-06-22  7:27 ` Singh, Aman Deep
@ 2021-07-01 14:06   ` Andrew Rybchenko
  2021-07-06 14:24     ` Raslan Darawsheh
  0 siblings, 1 reply; 16+ messages in thread
From: Andrew Rybchenko @ 2021-07-01 14:06 UTC (permalink / raw)
  To: Singh, Aman Deep, dev

Hi Raslan,

could you reply, please.

Andrew.

On 6/22/21 10:27 AM, Singh, Aman Deep wrote:
> Hi Raslan,
> 
> Can you please provide link to this RFC 38415-g30
> I just had some doubt on byte-order conversion as per RFC 1700
> <https://tools.ietf.org/html/rfc1700>
> 
> Regards
> Aman


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc
  2021-07-01 14:06   ` Andrew Rybchenko
@ 2021-07-06 14:24     ` Raslan Darawsheh
  2021-07-08  9:23       ` Andrew Rybchenko
  2021-07-08  9:52       ` Singh, Aman Deep
  0 siblings, 2 replies; 16+ messages in thread
From: Raslan Darawsheh @ 2021-07-06 14:24 UTC (permalink / raw)
  To: Andrew Rybchenko, Singh, Aman Deep, dev

Hi Guys,

Sorry for missing this mail, for some reason it was missed in my inbox, 
This is the link to this rfc:
https://www.3gpp.org/ftp/Specs/archive/38_series/38.415/38415-g30.zip


Kindest regards,
Raslan Darawsheh

> -----Original Message-----
> From: dev <dev-bounces@dpdk.org> On Behalf Of Andrew Rybchenko
> Sent: Thursday, July 1, 2021 5:06 PM
> To: Singh, Aman Deep <aman.deep.singh@intel.com>; dev@dpdk.org
> Subject: Re: [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc
> 
> Hi Raslan,
> 
> could you reply, please.
> 
> Andrew.
> 
> On 6/22/21 10:27 AM, Singh, Aman Deep wrote:
> > Hi Raslan,
> >
> > Can you please provide link to this RFC 38415-g30 I just had some
> > doubt on byte-order conversion as per RFC 1700
> > <https://tools.ietf.org/html/rfc1700>
> >
> > Regards
> > Aman


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc
  2021-07-06 14:24     ` Raslan Darawsheh
@ 2021-07-08  9:23       ` Andrew Rybchenko
  2021-07-08  9:27         ` Raslan Darawsheh
  2021-07-08  9:52       ` Singh, Aman Deep
  1 sibling, 1 reply; 16+ messages in thread
From: Andrew Rybchenko @ 2021-07-08  9:23 UTC (permalink / raw)
  To: Raslan Darawsheh, Singh, Aman Deep, dev

Hi Raslan,

On 7/6/21 5:24 PM, Raslan Darawsheh wrote:
> Hi Guys,
>
> Sorry for missing this mail, for some reason it was missed in my inbox, 
> This is the link to this rfc:
> https://www.3gpp.org/ftp/Specs/archive/38_series/38.415/38415-g30.zip

Thanks for the link. The patch LGTM, but I have only one question left.
Where is it used? Are you going to upstream corresponding code in
the release cycle?

Andrew.

> Kindest regards,
> Raslan Darawsheh
>
>> -----Original Message-----
>> From: dev <dev-bounces@dpdk.org> On Behalf Of Andrew Rybchenko
>> Sent: Thursday, July 1, 2021 5:06 PM
>> To: Singh, Aman Deep <aman.deep.singh@intel.com>; dev@dpdk.org
>> Subject: Re: [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc
>>
>> Hi Raslan,
>>
>> could you reply, please.
>>
>> Andrew.
>>
>> On 6/22/21 10:27 AM, Singh, Aman Deep wrote:
>>> Hi Raslan,
>>>
>>> Can you please provide link to this RFC 38415-g30 I just had some
>>> doubt on byte-order conversion as per RFC 1700
>>> <https://tools.ietf.org/html/rfc1700>
>>>
>>> Regards
>>> Aman


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc
  2021-06-17  9:17 [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc Raslan Darawsheh
  2021-06-22  7:27 ` Singh, Aman Deep
@ 2021-07-08  9:26 ` Andrew Rybchenko
  2021-08-23 10:55 ` [dpdk-dev] [PATCH v7 0/2] update gtp psc to use net hdr Raslan Darawsheh
  2 siblings, 0 replies; 16+ messages in thread
From: Andrew Rybchenko @ 2021-07-08  9:26 UTC (permalink / raw)
  To: Raslan Darawsheh, dev
  Cc: ferruh.yigit, orika, ivan.malov, ying.a.wang, olivier.matz,
	viacheslavo, shirik

On 6/17/21 12:17 PM, Raslan Darawsheh wrote:
> Define new rte header for gtp PDU session container
> based on RFC 38415-g30
> 
> Signed-off-by: Raslan Darawsheh <rasland@nvidia.com>

As I understand prefix should be "net: ", not "ethdev: ".

Reviewed-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>

> ---
> v6 : fixed typos
>      fixed indentation of comments for fields
> ---
>  lib/net/rte_gtp.h | 78 +++++++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 78 insertions(+)

[snip]


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc
  2021-07-08  9:23       ` Andrew Rybchenko
@ 2021-07-08  9:27         ` Raslan Darawsheh
  2021-07-08  9:39           ` Andrew Rybchenko
  0 siblings, 1 reply; 16+ messages in thread
From: Raslan Darawsheh @ 2021-07-08  9:27 UTC (permalink / raw)
  To: Andrew Rybchenko, Singh, Aman Deep, dev

Thank you for the review,

Basically it's not used yet since it will break the abi
The main usage was in rte_flow item of gtp_psc
To replace the current structure with the header definition. And since this will break the abi I'm adding the header definition now but will be used later in rte_flow.

Kindest regards,
Raslan Darawsheh

________________________________
From: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
Sent: Thursday, July 8, 2021, 12:23 PM
To: Raslan Darawsheh; Singh, Aman Deep; dev@dpdk.org
Subject: Re: [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc

Hi Raslan,

On 7/6/21 5:24 PM, Raslan Darawsheh wrote:
> Hi Guys,
>
> Sorry for missing this mail, for some reason it was missed in my inbox,
> This is the link to this rfc:
> https://www.3gpp.org/ftp/Specs/archive/38_series/38.415/38415-g30.zip

Thanks for the link. The patch LGTM, but I have only one question left.
Where is it used? Are you going to upstream corresponding code in
the release cycle?

Andrew.

> Kindest regards,
> Raslan Darawsheh
>
>> -----Original Message-----
>> From: dev <dev-bounces@dpdk.org> On Behalf Of Andrew Rybchenko
>> Sent: Thursday, July 1, 2021 5:06 PM
>> To: Singh, Aman Deep <aman.deep.singh@intel.com>; dev@dpdk.org
>> Subject: Re: [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc
>>
>> Hi Raslan,
>>
>> could you reply, please.
>>
>> Andrew.
>>
>> On 6/22/21 10:27 AM, Singh, Aman Deep wrote:
>>> Hi Raslan,
>>>
>>> Can you please provide link to this RFC 38415-g30 I just had some
>>> doubt on byte-order conversion as per RFC 1700
>>> <https://tools.ietf.org/html/rfc1700>
>>>
>>> Regards
>>> Aman



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc
  2021-07-08  9:27         ` Raslan Darawsheh
@ 2021-07-08  9:39           ` Andrew Rybchenko
  2021-07-08 10:29             ` Thomas Monjalon
  0 siblings, 1 reply; 16+ messages in thread
From: Andrew Rybchenko @ 2021-07-08  9:39 UTC (permalink / raw)
  To: Raslan Darawsheh, Thomas Monjalon
  Cc: Singh, Aman Deep, dev, david.marchand, Olivier Matz

On 7/8/21 12:27 PM, Raslan Darawsheh wrote:
> Thank you for the review,
> 
> Basically it's not used yet since it will break the abi
> The main usage was in rte_flow item of gtp_psc
> To replace the current structure with the header definition. And since
> this will break the abi I'm adding the header definition now but will be
> used later in rte_flow.

@Thomas If so, should we accept it in the current release cycle
or should it simply wait for the code which uses it?

> Kindest regards,
> Raslan Darawsheh
> 
> ------------------------------------------------------------------------
> *From:* Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
> *Sent:* Thursday, July 8, 2021, 12:23 PM
> *To:* Raslan Darawsheh; Singh, Aman Deep; dev@dpdk.org
> *Subject:* Re: [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc
> 
> Hi Raslan,
> 
> On 7/6/21 5:24 PM, Raslan Darawsheh wrote:
>> Hi Guys,
>>
>> Sorry for missing this mail, for some reason it was missed in my inbox, 
>> This is the link to this rfc:
>> https://www.3gpp.org/ftp/Specs/archive/38_series/38.415/38415-g30.zip
> <https://www.3gpp.org/ftp/Specs/archive/38_series/38.415/38415-g30.zip>
> 
> Thanks for the link. The patch LGTM, but I have only one question left.
> Where is it used? Are you going to upstream corresponding code in
> the release cycle?
> 
> Andrew.
> 
>> Kindest regards,
>> Raslan Darawsheh
>>
>>> -----Original Message-----
>>> From: dev <dev-bounces@dpdk.org> On Behalf Of Andrew Rybchenko
>>> Sent: Thursday, July 1, 2021 5:06 PM
>>> To: Singh, Aman Deep <aman.deep.singh@intel.com>; dev@dpdk.org
>>> Subject: Re: [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc
>>>
>>> Hi Raslan,
>>>
>>> could you reply, please.
>>>
>>> Andrew.
>>>
>>> On 6/22/21 10:27 AM, Singh, Aman Deep wrote:
>>>> Hi Raslan,
>>>>
>>>> Can you please provide link to this RFC 38415-g30 I just had some
>>>> doubt on byte-order conversion as per RFC 1700
>>>> <https://tools.ietf.org/html/rfc1700 <https://tools.ietf.org/html/rfc1700>>
>>>>
>>>> Regards
>>>> Aman
> 
> 


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc
  2021-07-06 14:24     ` Raslan Darawsheh
  2021-07-08  9:23       ` Andrew Rybchenko
@ 2021-07-08  9:52       ` Singh, Aman Deep
  1 sibling, 0 replies; 16+ messages in thread
From: Singh, Aman Deep @ 2021-07-08  9:52 UTC (permalink / raw)
  To: Raslan Darawsheh, Andrew Rybchenko, dev

Thanks Raslan for the rfc link.The structure order for RTE_BIG_ENDIAN seems ok. I doubt for 
RTE_LITTLE_ENDIAN case, if there is a need to reverse the order of 
fields, as we are using uint8_t only. If you have already tested on x86 
then it should be fine ? Regards Aman

On 7/6/2021 7:54 PM, Raslan Darawsheh wrote:
> Hi Guys,
>
> Sorry for missing this mail, for some reason it was missed in my inbox,
> This is the link to this rfc:
> https://www.3gpp.org/ftp/Specs/archive/38_series/38.415/38415-g30.zip
>
>
> Kindest regards,
> Raslan Darawsheh
>
>> -----Original Message-----
>> From: dev <dev-bounces@dpdk.org> On Behalf Of Andrew Rybchenko
>> Sent: Thursday, July 1, 2021 5:06 PM
>> To: Singh, Aman Deep <aman.deep.singh@intel.com>; dev@dpdk.org
>> Subject: Re: [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc
>>
>> Hi Raslan,
>>
>> could you reply, please.
>>
>> Andrew.
>>
>> On 6/22/21 10:27 AM, Singh, Aman Deep wrote:
>>> Hi Raslan,
>>>
>>> Can you please provide link to this RFC 38415-g30 I just had some
>>> doubt on byte-order conversion as per RFC 1700
>>> <https://tools.ietf.org/html/rfc1700>
>>>
>>> Regards
>>> Aman

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc
  2021-07-08  9:39           ` Andrew Rybchenko
@ 2021-07-08 10:29             ` Thomas Monjalon
  0 siblings, 0 replies; 16+ messages in thread
From: Thomas Monjalon @ 2021-07-08 10:29 UTC (permalink / raw)
  To: Raslan Darawsheh, Andrew Rybchenko
  Cc: Singh, Aman Deep, dev, david.marchand, Olivier Matz

08/07/2021 11:39, Andrew Rybchenko:
> On 7/8/21 12:27 PM, Raslan Darawsheh wrote:
> > Thank you for the review,
> > 
> > Basically it's not used yet since it will break the abi
> > The main usage was in rte_flow item of gtp_psc
> > To replace the current structure with the header definition. And since
> > this will break the abi I'm adding the header definition now but will be
> > used later in rte_flow.
> 
> @Thomas If so, should we accept it in the current release cycle
> or should it simply wait for the code which uses it?

If no need, we can wait next release.


> > ------------------------------------------------------------------------
> > *From:* Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
> > *Sent:* Thursday, July 8, 2021, 12:23 PM
> > *To:* Raslan Darawsheh; Singh, Aman Deep; dev@dpdk.org
> > *Subject:* Re: [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc
> > 
> > Hi Raslan,
> > 
> > On 7/6/21 5:24 PM, Raslan Darawsheh wrote:
> >> Hi Guys,
> >>
> >> Sorry for missing this mail, for some reason it was missed in my inbox, 
> >> This is the link to this rfc:
> >> https://www.3gpp.org/ftp/Specs/archive/38_series/38.415/38415-g30.zip
> > <https://www.3gpp.org/ftp/Specs/archive/38_series/38.415/38415-g30.zip>
> > 
> > Thanks for the link. The patch LGTM, but I have only one question left.
> > Where is it used? Are you going to upstream corresponding code in
> > the release cycle?
> > 
> > Andrew.
> > 
> >> Kindest regards,
> >> Raslan Darawsheh
> >>
> >>> -----Original Message-----
> >>> From: dev <dev-bounces@dpdk.org> On Behalf Of Andrew Rybchenko
> >>> Sent: Thursday, July 1, 2021 5:06 PM
> >>> To: Singh, Aman Deep <aman.deep.singh@intel.com>; dev@dpdk.org
> >>> Subject: Re: [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc
> >>>
> >>> Hi Raslan,
> >>>
> >>> could you reply, please.
> >>>
> >>> Andrew.
> >>>
> >>> On 6/22/21 10:27 AM, Singh, Aman Deep wrote:
> >>>> Hi Raslan,
> >>>>
> >>>> Can you please provide link to this RFC 38415-g30 I just had some
> >>>> doubt on byte-order conversion as per RFC 1700
> >>>> <https://tools.ietf.org/html/rfc1700 <https://tools.ietf.org/html/rfc1700>>
> >>>>
> >>>> Regards
> >>>> Aman




^ permalink raw reply	[flat|nested] 16+ messages in thread

* [dpdk-dev] [PATCH v7 0/2] update gtp psc to use net hdr
  2021-06-17  9:17 [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc Raslan Darawsheh
  2021-06-22  7:27 ` Singh, Aman Deep
  2021-07-08  9:26 ` Andrew Rybchenko
@ 2021-08-23 10:55 ` Raslan Darawsheh
  2021-08-23 10:55   ` [dpdk-dev] [PATCH v7 1/2] net: add new ext hdr for gtp psc Raslan Darawsheh
                     ` (2 more replies)
  2 siblings, 3 replies; 16+ messages in thread
From: Raslan Darawsheh @ 2021-08-23 10:55 UTC (permalink / raw)
  To: dev; +Cc: aman.deep.singh, andrew.rybchenko, ferruh.yigit, olivier.matz, thomas

This series add header definition for gtp_psc in the net
library, and update the relevant rte_flow_item gtp_psc to
use this new header definition.

Raslan Darawsheh (2):
  net: add new ext hdr for gtp psc
  ethdev: use ext hdr for gtp psc item

 app/test-pmd/cmdline_flow.c                 | 23 +++---
 doc/guides/testpmd_app_ug/testpmd_funcs.rst |  2 +-
 drivers/net/iavf/iavf_fdir.c                |  9 +--
 drivers/net/iavf/iavf_hash.c                |  4 +-
 drivers/net/ice/ice_fdir_filter.c           |  4 +-
 drivers/net/ice/ice_hash.c                  |  4 +-
 drivers/net/ice/ice_switch_filter.c         |  8 +--
 drivers/net/mlx5/mlx5_flow.h                |  3 -
 drivers/net/mlx5/mlx5_flow_dv.c             | 20 ++----
 lib/ethdev/rte_flow.h                       |  6 +-
 lib/net/rte_gtp.h                           | 78 +++++++++++++++++++++
 11 files changed, 112 insertions(+), 49 deletions(-)

-- 
2.25.1


^ permalink raw reply	[flat|nested] 16+ messages in thread

* [dpdk-dev] [PATCH v7 1/2] net: add new ext hdr for gtp psc
  2021-08-23 10:55 ` [dpdk-dev] [PATCH v7 0/2] update gtp psc to use net hdr Raslan Darawsheh
@ 2021-08-23 10:55   ` Raslan Darawsheh
  2021-09-07 10:30     ` Ferruh Yigit
  2021-08-23 10:55   ` [dpdk-dev] [PATCH v7 2/2] ethdev: use ext hdr for gtp psc item Raslan Darawsheh
  2021-09-28 10:37   ` [dpdk-dev] [PATCH v7 0/2] update gtp psc to use net hdr Ferruh Yigit
  2 siblings, 1 reply; 16+ messages in thread
From: Raslan Darawsheh @ 2021-08-23 10:55 UTC (permalink / raw)
  To: dev; +Cc: aman.deep.singh, andrew.rybchenko, ferruh.yigit, olivier.matz, thomas

Define new rte header for gtp PDU session container
based on RFC 38415-g30

Signed-off-by: Raslan Darawsheh <rasland@nvidia.com>
---
 lib/net/rte_gtp.h | 78 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 78 insertions(+)

diff --git a/lib/net/rte_gtp.h b/lib/net/rte_gtp.h
index 6a6f9b238d..9f6deb9c7e 100644
--- a/lib/net/rte_gtp.h
+++ b/lib/net/rte_gtp.h
@@ -61,6 +61,84 @@ struct rte_gtp_hdr_ext_word {
 	uint8_t next_ext;     /**< Next Extension Header Type. */
 }  __rte_packed;
 
+/**
+ * Optional extension for GTP with next_ext set to 0x85
+ * defined based on RFC 38415-g30.
+ */
+__extension__
+struct rte_gtp_psc_generic_hdr {
+	uint8_t ext_hdr_len;	/**< PDU ext hdr len in multiples of 4 bytes */
+#if RTE_BYTE_ORDER == RTE_BIG_ENDIAN
+	uint8_t type:4;		/**< PDU type */
+	uint8_t qmp:1;		/**< Qos Monitoring Packet */
+	uint8_t pad:3;		/**< type specific pad bits */
+	uint8_t spare:2;	/**< type specific spare bits */
+	uint8_t qfi:6;		/**< Qos Flow Identifier */
+#else
+	uint8_t qfi:6;		/**< Qos Flow Identifier */
+	uint8_t spare:2;	/**< type specific spare bits */
+	uint8_t pad:3;		/**< type specific pad bits */
+	uint8_t qmp:1;		/**< Qos Monitoring Packet */
+	uint8_t type:4;		/**< PDU type */
+#endif
+	uint8_t data[0];	/**< variable length data fields */
+} __rte_packed;
+
+/**
+ * Optional extension for GTP with next_ext set to 0x85
+ * type0 defined based on RFC 38415-g30
+ */
+__extension__
+struct rte_gtp_psc_type0_hdr {
+	uint8_t ext_hdr_len;	/**< PDU ext hdr len in multiples of 4 bytes */
+#if RTE_BYTE_ORDER == RTE_BIG_ENDIAN
+	uint8_t type:4;		/**< PDU type */
+	uint8_t qmp:1;		/**< Qos Monitoring Packet */
+	uint8_t snp:1;		/**< Sequence number presence */
+	uint8_t spare_dl1:2;	/**< spare down link bits */
+	uint8_t ppp:1;		/**< Paging policy presence */
+	uint8_t rqi:1;		/**< Reflective Qos Indicator */
+	uint8_t qfi:6;		/**< Qos Flow Identifier */
+#else
+	uint8_t qfi:6;		/**< Qos Flow Identifier */
+	uint8_t rqi:1;		/**< Reflective Qos Indicator */
+	uint8_t ppp:1;		/**< Paging policy presence */
+	uint8_t spare_dl1:2;	/**< spare down link bits */
+	uint8_t snp:1;		/**< Sequence number presence */
+	uint8_t type:4;		/**< PDU type */
+#endif
+	uint8_t data[0];	/**< variable length data fields */
+} __rte_packed;
+
+/**
+ * Optional extension for GTP with next_ext set to 0x85
+ * type1 defined based on RFC 38415-g30
+ */
+__extension__
+struct rte_gtp_psc_type1_hdr {
+	uint8_t ext_hdr_len;	/**< PDU ext hdr len in multiples of 4 bytes */
+#if RTE_BYTE_ORDER == RTE_BIG_ENDIAN
+	uint8_t type:4;		/**< PDU type */
+	uint8_t qmp:1;		/**< Qos Monitoring Packet */
+	uint8_t dl_delay_ind:1;	/**< dl delay result presence */
+	uint8_t ul_delay_ind:1;	/**< ul delay result presence */
+	uint8_t snp:1;		/**< Sequence number presence ul */
+	uint8_t n_delay_ind:1;	/**< N3/N9 delay result presence */
+	uint8_t spare_ul2:1;	/**< spare up link bits */
+	uint8_t qfi:6;		/**< Qos Flow Identifier */
+#else
+	uint8_t qfi:6;		/**< Qos Flow Identifier */
+	uint8_t spare_ul2:1;	/**< spare up link bits */
+	uint8_t n_delay_ind:1;	/**< N3/N9 delay result presence */
+	uint8_t snp:1;		/**< Sequence number presence ul */
+	uint8_t ul_delay_ind:1;	/**< ul delay result presence */
+	uint8_t dl_delay_ind:1;	/**< dl delay result presence */
+	uint8_t qmp:1;		/**< Qos Monitoring Packet */
+	uint8_t type:4;		/**< PDU type */
+#endif
+	uint8_t data[0];	/**< variable length data fields */
+} __rte_packed;
+
 /** GTP header length */
 #define RTE_ETHER_GTP_HLEN \
 	(sizeof(struct rte_udp_hdr) + sizeof(struct rte_gtp_hdr))
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [dpdk-dev] [PATCH v7 2/2] ethdev: use ext hdr for gtp psc item
  2021-08-23 10:55 ` [dpdk-dev] [PATCH v7 0/2] update gtp psc to use net hdr Raslan Darawsheh
  2021-08-23 10:55   ` [dpdk-dev] [PATCH v7 1/2] net: add new ext hdr for gtp psc Raslan Darawsheh
@ 2021-08-23 10:55   ` Raslan Darawsheh
  2021-09-07 10:30     ` Ferruh Yigit
  2021-09-28 10:37   ` [dpdk-dev] [PATCH v7 0/2] update gtp psc to use net hdr Ferruh Yigit
  2 siblings, 1 reply; 16+ messages in thread
From: Raslan Darawsheh @ 2021-08-23 10:55 UTC (permalink / raw)
  To: dev
  Cc: aman.deep.singh, andrew.rybchenko, ferruh.yigit, olivier.matz,
	thomas, Ori Kam, Xiaoyun Li, Jingjing Wu, Beilei Xing,
	Qiming Yang, Qi Zhang, Matan Azrad, Shahaf Shuler,
	Viacheslav Ovsiienko

This updates the gtp_psc item to use the net hdr
definition of the gtp_psc to be based on RFC 38415-g30

Signed-off-by: Raslan Darawsheh <rasland@nvidia.com>
---
 app/test-pmd/cmdline_flow.c                 | 23 +++++++--------------
 doc/guides/testpmd_app_ug/testpmd_funcs.rst |  2 +-
 drivers/net/iavf/iavf_fdir.c                |  9 ++++----
 drivers/net/iavf/iavf_hash.c                |  4 ++--
 drivers/net/ice/ice_fdir_filter.c           |  4 ++--
 drivers/net/ice/ice_hash.c                  |  4 ++--
 drivers/net/ice/ice_switch_filter.c         |  8 +++----
 drivers/net/mlx5/mlx5_flow.h                |  3 ---
 drivers/net/mlx5/mlx5_flow_dv.c             | 20 +++++++-----------
 lib/ethdev/rte_flow.h                       |  6 +++---
 10 files changed, 34 insertions(+), 49 deletions(-)

diff --git a/app/test-pmd/cmdline_flow.c b/app/test-pmd/cmdline_flow.c
index 6cd99bf37f..bb22294dd3 100644
--- a/app/test-pmd/cmdline_flow.c
+++ b/app/test-pmd/cmdline_flow.c
@@ -3315,16 +3315,16 @@ static const struct token token_list[] = {
 		.help = "QoS flow identifier",
 		.next = NEXT(item_gtp_psc, NEXT_ENTRY(COMMON_UNSIGNED),
 			     item_param),
-		.args = ARGS(ARGS_ENTRY_HTON(struct rte_flow_item_gtp_psc,
-					qfi)),
+		.args = ARGS(ARGS_ENTRY_BF(struct rte_flow_item_gtp_psc,
+					hdr.qfi, 6)),
 	},
 	[ITEM_GTP_PSC_PDU_T] = {
 		.name = "pdu_t",
 		.help = "PDU type",
 		.next = NEXT(item_gtp_psc, NEXT_ENTRY(COMMON_UNSIGNED),
 			     item_param),
-		.args = ARGS(ARGS_ENTRY_HTON(struct rte_flow_item_gtp_psc,
-					pdu_type)),
+		.args = ARGS(ARGS_ENTRY_BF(struct rte_flow_item_gtp_psc,
+					hdr.type, 4)),
 	},
 	[ITEM_PPPOES] = {
 		.name = "pppoes",
@@ -8600,20 +8600,13 @@ cmd_set_raw_parsed(const struct buffer *in)
 					*opt = item->spec;
 				struct {
 					uint8_t len;
-					uint8_t pdu_type;
-					uint8_t qfi;
+					uint8_t pdu_type:4;
+					uint8_t qfi:6;
 					uint8_t next;
 				} psc;
-
-				if (opt->pdu_type & 0x0F) {
-					/* Support the minimal option only. */
-					fprintf(stderr,
-						"Error - GTP PSC option with extra fields not supported\n");
-					goto error;
-				}
 				psc.len = sizeof(psc);
-				psc.pdu_type = opt->pdu_type;
-				psc.qfi = opt->qfi;
+				psc.pdu_type = opt->hdr.type;
+				psc.qfi = opt->hdr.qfi;
 				psc.next = 0;
 				*total_size += sizeof(psc);
 				rte_memcpy(data_tail - (*total_size),
diff --git a/doc/guides/testpmd_app_ug/testpmd_funcs.rst b/doc/guides/testpmd_app_ug/testpmd_funcs.rst
index 4f8751be1c..bbef706374 100644
--- a/doc/guides/testpmd_app_ug/testpmd_funcs.rst
+++ b/doc/guides/testpmd_app_ug/testpmd_funcs.rst
@@ -3788,7 +3788,7 @@ This section lists supported pattern items and their attributes, if any.
 
   - ``pdu_type {unsigned}``: PDU type.
 
-  - ``qfi {unsigned}``: PPP, RQI and QoS flow identifier.
+  - ``qfi {unsigned}``: QoS flow identifier.
 
 - ``pppoes``, ``pppoed``: match PPPoE header.
 
diff --git a/drivers/net/iavf/iavf_fdir.c b/drivers/net/iavf/iavf_fdir.c
index da3eec8b59..8f56342762 100644
--- a/drivers/net/iavf/iavf_fdir.c
+++ b/drivers/net/iavf/iavf_fdir.c
@@ -1160,15 +1160,16 @@ iavf_fdir_parse_pattern(__rte_unused struct iavf_adapter *ad,
 
 			if (!gtp_psc_spec)
 				VIRTCHNL_SET_PROTO_HDR_TYPE(hdr, GTPU_EH);
-			else if ((gtp_psc_mask->qfi) && !(gtp_psc_mask->pdu_type))
+			else if ((gtp_psc_mask->hdr.qfi) &&
+				!(gtp_psc_mask->hdr.type))
 				VIRTCHNL_SET_PROTO_HDR_TYPE(hdr, GTPU_EH);
-			else if (gtp_psc_spec->pdu_type == IAVF_GTPU_EH_UPLINK)
+			else if (gtp_psc_spec->hdr.type == IAVF_GTPU_EH_UPLINK)
 				VIRTCHNL_SET_PROTO_HDR_TYPE(hdr, GTPU_EH_PDU_UP);
-			else if (gtp_psc_spec->pdu_type == IAVF_GTPU_EH_DWLINK)
+			else if (gtp_psc_spec->hdr.type == IAVF_GTPU_EH_DWLINK)
 				VIRTCHNL_SET_PROTO_HDR_TYPE(hdr, GTPU_EH_PDU_DWN);
 
 			if (gtp_psc_spec && gtp_psc_mask) {
-				if (gtp_psc_mask->qfi == UINT8_MAX) {
+				if (gtp_psc_mask->hdr.qfi == 0x3F) {
 					input_set |= IAVF_INSET_GTPU_QFI;
 					VIRTCHNL_ADD_PROTO_HDR_FIELD_BIT(hdr, GTPU_EH, QFI);
 				}
diff --git a/drivers/net/iavf/iavf_hash.c b/drivers/net/iavf/iavf_hash.c
index 2b03dad858..144f4277d0 100644
--- a/drivers/net/iavf/iavf_hash.c
+++ b/drivers/net/iavf/iavf_hash.c
@@ -731,9 +731,9 @@ iavf_hash_parse_pattern(const struct rte_flow_item pattern[], uint64_t *phint,
 			psc = item->spec;
 			if (!psc)
 				break;
-			else if (psc->pdu_type == IAVF_GTPU_EH_UPLINK)
+			else if (psc->hdr.type == IAVF_GTPU_EH_UPLINK)
 				*phint |= IAVF_PHINT_GTPU_EH_UP;
-			else if (psc->pdu_type == IAVF_GTPU_EH_DWNLINK)
+			else if (psc->hdr.type == IAVF_GTPU_EH_DWNLINK)
 				*phint |= IAVF_PHINT_GTPU_EH_DWN;
 			break;
 		case RTE_FLOW_ITEM_TYPE_ECPRI:
diff --git a/drivers/net/ice/ice_fdir_filter.c b/drivers/net/ice/ice_fdir_filter.c
index 82adb1fc8b..3a7ef270af 100644
--- a/drivers/net/ice/ice_fdir_filter.c
+++ b/drivers/net/ice/ice_fdir_filter.c
@@ -2104,11 +2104,11 @@ ice_fdir_parse_pattern(__rte_unused struct ice_adapter *ad,
 			if (!(gtp_psc_spec && gtp_psc_mask))
 				break;
 
-			if (gtp_psc_mask->qfi == UINT8_MAX)
+			if (gtp_psc_mask->hdr.qfi == 0x3F)
 				input_set_o |= ICE_INSET_GTPU_QFI;
 
 			filter->input.gtpu_data.qfi =
-				gtp_psc_spec->qfi;
+				gtp_psc_spec->hdr.qfi;
 			break;
 		case RTE_FLOW_ITEM_TYPE_ESP:
 			if (l3 == RTE_FLOW_ITEM_TYPE_IPV4 &&
diff --git a/drivers/net/ice/ice_hash.c b/drivers/net/ice/ice_hash.c
index 54d14dfcdd..caf1bfa40f 100644
--- a/drivers/net/ice/ice_hash.c
+++ b/drivers/net/ice/ice_hash.c
@@ -619,9 +619,9 @@ ice_hash_parse_pattern(const struct rte_flow_item pattern[], uint64_t *phint,
 			psc = item->spec;
 			if (!psc)
 				break;
-			else if (psc->pdu_type == ICE_GTPU_EH_UPLINK)
+			else if (psc->hdr.type == ICE_GTPU_EH_UPLINK)
 				*phint |= ICE_PHINT_GTPU_EH_UP;
-			else if (psc->pdu_type == ICE_GTPU_EH_DWNLINK)
+			else if (psc->hdr.type == ICE_GTPU_EH_DWNLINK)
 				*phint |= ICE_PHINT_GTPU_EH_DWN;
 			break;
 		default:
diff --git a/drivers/net/ice/ice_switch_filter.c b/drivers/net/ice/ice_switch_filter.c
index eeed386c63..e44c50ff3d 100644
--- a/drivers/net/ice/ice_switch_filter.c
+++ b/drivers/net/ice/ice_switch_filter.c
@@ -1350,7 +1350,7 @@ ice_switch_parse_pattern(const struct rte_flow_item pattern[],
 				return false;
 			}
 			if (gtp_psc_spec && gtp_psc_mask) {
-				if (gtp_psc_mask->pdu_type) {
+				if (gtp_psc_mask->hdr.type) {
 					rte_flow_error_set(error, EINVAL,
 						RTE_FLOW_ERROR_TYPE_ITEM,
 						item,
@@ -1358,13 +1358,13 @@ ice_switch_parse_pattern(const struct rte_flow_item pattern[],
 					return false;
 				}
 				input = &outer_input_set;
-				if (gtp_psc_mask->qfi)
+				if (gtp_psc_mask->hdr.qfi)
 					*input |= ICE_INSET_GTPU_QFI;
 				list[t].type = ICE_GTP;
 				list[t].h_u.gtp_hdr.qfi =
-					gtp_psc_spec->qfi;
+					gtp_psc_spec->hdr.qfi;
 				list[t].m_u.gtp_hdr.qfi =
-					gtp_psc_mask->qfi;
+					gtp_psc_mask->hdr.qfi;
 				input_set_byte += 1;
 				t++;
 			}
diff --git a/drivers/net/mlx5/mlx5_flow.h b/drivers/net/mlx5/mlx5_flow.h
index 76ad53f2a1..5c68d4f7d7 100644
--- a/drivers/net/mlx5/mlx5_flow.h
+++ b/drivers/net/mlx5/mlx5_flow.h
@@ -397,9 +397,6 @@ enum mlx5_feature_name {
 /* GTP extension header flag. */
 #define MLX5_GTP_EXT_HEADER_FLAG 4
 
-/* GTP extension header max PDU type value. */
-#define MLX5_GTP_EXT_MAX_PDU_TYPE 15
-
 /* GTP extension header PDU type shift. */
 #define MLX5_GTP_PDU_TYPE_SHIFT(a) ((a) << 4)
 
diff --git a/drivers/net/mlx5/mlx5_flow_dv.c b/drivers/net/mlx5/mlx5_flow_dv.c
index 31d857030f..a54defa45f 100644
--- a/drivers/net/mlx5/mlx5_flow_dv.c
+++ b/drivers/net/mlx5/mlx5_flow_dv.c
@@ -2412,11 +2412,10 @@ flow_dv_validate_item_gtp_psc(const struct rte_flow_item *item,
 {
 	const struct rte_flow_item_gtp *gtp_spec;
 	const struct rte_flow_item_gtp *gtp_mask;
-	const struct rte_flow_item_gtp_psc *spec;
 	const struct rte_flow_item_gtp_psc *mask;
 	const struct rte_flow_item_gtp_psc nic_mask = {
-		.pdu_type = 0xFF,
-		.qfi = 0xFF,
+		.hdr.type = 0xF,
+		.hdr.qfi = 0x3F,
 	};
 
 	if (!gtp_item || !(last_item & MLX5_FLOW_LAYER_GTP))
@@ -2440,12 +2439,7 @@ flow_dv_validate_item_gtp_psc(const struct rte_flow_item *item,
 	/* GTP spec is here and E flag is requested to match zero. */
 	if (!item->spec)
 		return 0;
-	spec = item->spec;
 	mask = item->mask ? item->mask : &rte_flow_item_gtp_psc_mask;
-	if (spec->pdu_type > MLX5_GTP_EXT_MAX_PDU_TYPE)
-		return rte_flow_error_set
-			(error, ENOTSUP, RTE_FLOW_ERROR_TYPE_ITEM, item,
-			 "PDU type should be smaller than 16");
 	return mlx5_flow_item_acceptable(item, (const uint8_t *)mask,
 					 (const uint8_t *)&nic_mask,
 					 sizeof(struct rte_flow_item_gtp_psc),
@@ -9951,14 +9945,14 @@ flow_dv_translate_item_gtp_psc(void *matcher, void *key,
 		if (!gtp_psc_m)
 			gtp_psc_m = &rte_flow_item_gtp_psc_mask;
 		dw_0.w32 = 0;
-		dw_0.type_flags = MLX5_GTP_PDU_TYPE_SHIFT(gtp_psc_m->pdu_type);
-		dw_0.qfi = gtp_psc_m->qfi;
+		dw_0.type_flags = MLX5_GTP_PDU_TYPE_SHIFT(gtp_psc_m->hdr.type);
+		dw_0.qfi = gtp_psc_m->hdr.qfi;
 		MLX5_SET(fte_match_set_misc3, misc3_m, gtpu_first_ext_dw_0,
 			 rte_cpu_to_be_32(dw_0.w32));
 		dw_0.w32 = 0;
-		dw_0.type_flags = MLX5_GTP_PDU_TYPE_SHIFT(gtp_psc_v->pdu_type &
-							gtp_psc_m->pdu_type);
-		dw_0.qfi = gtp_psc_v->qfi & gtp_psc_m->qfi;
+		dw_0.type_flags = MLX5_GTP_PDU_TYPE_SHIFT(gtp_psc_v->hdr.type &
+							gtp_psc_m->hdr.type);
+		dw_0.qfi = gtp_psc_v->hdr.qfi & gtp_psc_m->hdr.qfi;
 		MLX5_SET(fte_match_set_misc3, misc3_v, gtpu_first_ext_dw_0,
 			 rte_cpu_to_be_32(dw_0.w32));
 	}
diff --git a/lib/ethdev/rte_flow.h b/lib/ethdev/rte_flow.h
index 70f455d47d..7b1ed7f110 100644
--- a/lib/ethdev/rte_flow.h
+++ b/lib/ethdev/rte_flow.h
@@ -34,6 +34,7 @@
 #include <rte_mbuf.h>
 #include <rte_mbuf_dyn.h>
 #include <rte_meter.h>
+#include <rte_gtp.h>
 
 #ifdef __cplusplus
 extern "C" {
@@ -1444,15 +1445,14 @@ static const struct rte_flow_item_meta rte_flow_item_meta_mask = {
  * Matches a GTP PDU extension header with type 0x85.
  */
 struct rte_flow_item_gtp_psc {
-	uint8_t pdu_type; /**< PDU type. */
-	uint8_t qfi; /**< PPP, RQI, QoS flow identifier. */
+	struct rte_gtp_psc_generic_hdr hdr; /**< gtp psc generic hdr. */
 };
 
 /** Default mask for RTE_FLOW_ITEM_TYPE_GTP_PSC. */
 #ifndef __cplusplus
 static const struct rte_flow_item_gtp_psc
 rte_flow_item_gtp_psc_mask = {
-	.qfi = 0xff,
+	.hdr.qfi = 0x3f,
 };
 #endif
 
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [dpdk-dev] [PATCH v7 1/2] net: add new ext hdr for gtp psc
  2021-08-23 10:55   ` [dpdk-dev] [PATCH v7 1/2] net: add new ext hdr for gtp psc Raslan Darawsheh
@ 2021-09-07 10:30     ` Ferruh Yigit
  0 siblings, 0 replies; 16+ messages in thread
From: Ferruh Yigit @ 2021-09-07 10:30 UTC (permalink / raw)
  To: Raslan Darawsheh, dev, olivier.matz
  Cc: aman.deep.singh, andrew.rybchenko, thomas

On 8/23/2021 11:55 AM, Raslan Darawsheh wrote:
> Define new rte header for gtp PDU session container
> based on RFC 38415-g30
> 
> Signed-off-by: Raslan Darawsheh <rasland@nvidia.com>

Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>

Patch title can be updated to have abbreviations uppercase, but it can be done
while merging I guess.


@Olivier,

If you OK with the patch I can proceed with it in and merge to next-net because
of the dependency of next patch.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [dpdk-dev] [PATCH v7 2/2] ethdev: use ext hdr for gtp psc item
  2021-08-23 10:55   ` [dpdk-dev] [PATCH v7 2/2] ethdev: use ext hdr for gtp psc item Raslan Darawsheh
@ 2021-09-07 10:30     ` Ferruh Yigit
  0 siblings, 0 replies; 16+ messages in thread
From: Ferruh Yigit @ 2021-09-07 10:30 UTC (permalink / raw)
  To: Raslan Darawsheh, dev
  Cc: aman.deep.singh, andrew.rybchenko, olivier.matz, thomas, Ori Kam,
	Xiaoyun Li, Jingjing Wu, Beilei Xing, Qiming Yang, Qi Zhang,
	Matan Azrad, Shahaf Shuler, Viacheslav Ovsiienko

On 8/23/2021 11:55 AM, Raslan Darawsheh wrote:
> This updates the gtp_psc item to use the net hdr
> definition of the gtp_psc to be based on RFC 38415-g30
> 
> Signed-off-by: Raslan Darawsheh <rasland@nvidia.com>

Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [dpdk-dev] [PATCH v7 0/2] update gtp psc to use net hdr
  2021-08-23 10:55 ` [dpdk-dev] [PATCH v7 0/2] update gtp psc to use net hdr Raslan Darawsheh
  2021-08-23 10:55   ` [dpdk-dev] [PATCH v7 1/2] net: add new ext hdr for gtp psc Raslan Darawsheh
  2021-08-23 10:55   ` [dpdk-dev] [PATCH v7 2/2] ethdev: use ext hdr for gtp psc item Raslan Darawsheh
@ 2021-09-28 10:37   ` Ferruh Yigit
  2 siblings, 0 replies; 16+ messages in thread
From: Ferruh Yigit @ 2021-09-28 10:37 UTC (permalink / raw)
  To: Raslan Darawsheh, dev
  Cc: aman.deep.singh, andrew.rybchenko, olivier.matz, thomas

On 8/23/2021 11:55 AM, Raslan Darawsheh wrote:
> This series add header definition for gtp_psc in the net
> library, and update the relevant rte_flow_item gtp_psc to
> use this new header definition.
> 
> Raslan Darawsheh (2):
>   net: add new ext hdr for gtp psc
>   ethdev: use ext hdr for gtp psc item
> 

Rebased on top latest next-net, need to update 'iavf_fdir.c'.

Series applied to dpdk-next-net/main, thanks.

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2021-09-28 10:37 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-17  9:17 [dpdk-dev] [PATCH v6] ethdev: add new ext hdr for gtp psc Raslan Darawsheh
2021-06-22  7:27 ` Singh, Aman Deep
2021-07-01 14:06   ` Andrew Rybchenko
2021-07-06 14:24     ` Raslan Darawsheh
2021-07-08  9:23       ` Andrew Rybchenko
2021-07-08  9:27         ` Raslan Darawsheh
2021-07-08  9:39           ` Andrew Rybchenko
2021-07-08 10:29             ` Thomas Monjalon
2021-07-08  9:52       ` Singh, Aman Deep
2021-07-08  9:26 ` Andrew Rybchenko
2021-08-23 10:55 ` [dpdk-dev] [PATCH v7 0/2] update gtp psc to use net hdr Raslan Darawsheh
2021-08-23 10:55   ` [dpdk-dev] [PATCH v7 1/2] net: add new ext hdr for gtp psc Raslan Darawsheh
2021-09-07 10:30     ` Ferruh Yigit
2021-08-23 10:55   ` [dpdk-dev] [PATCH v7 2/2] ethdev: use ext hdr for gtp psc item Raslan Darawsheh
2021-09-07 10:30     ` Ferruh Yigit
2021-09-28 10:37   ` [dpdk-dev] [PATCH v7 0/2] update gtp psc to use net hdr Ferruh Yigit

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.