From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 00462A0A0C; Thu, 1 Apr 2021 18:51:21 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 7B8BB140EA7; Thu, 1 Apr 2021 18:51:21 +0200 (CEST) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by mails.dpdk.org (Postfix) with ESMTP id 380D0406FF for ; Thu, 1 Apr 2021 18:51:19 +0200 (CEST) IronPort-SDR: uR9kuE0+BDawXOzz4FqVE2nBVYTpaYZfiS7XNhKYgTssBGhAWsuwpA6pkgkAcQbl+W8NPBRJIL xJGcWn9EV4LA== X-IronPort-AV: E=McAfee;i="6000,8403,9941"; a="190053998" X-IronPort-AV: E=Sophos;i="5.81,296,1610438400"; d="scan'208";a="190053998" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Apr 2021 09:51:17 -0700 IronPort-SDR: xpEZORfxqH2Ohcxerh5P/AuW21Y/fltIhU6hmnXe4C1TwGvdy8Bun4qiY6xmx7nH/sfiDBUBpT Bug76j1yZwsQ== X-IronPort-AV: E=Sophos;i="5.81,296,1610438400"; d="scan'208";a="456061198" Received: from fyigit-mobl1.ger.corp.intel.com (HELO [10.213.201.245]) ([10.213.201.245]) by orsmga001-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Apr 2021 09:51:14 -0700 To: Raslan Darawsheh , dev@dpdk.org Cc: orika@nvidia.com, andrew.rybchenko@oktetlabs.ru, ivan.malov@oktetlabs.ru, ying.a.wang@intel.com, olivier.matz@6wind.com, viacheslavo@nvidia.com, shirik@nvidia.com References: <20210330075036.6579-2-rasland@nvidia.com> <20210330080013.6922-1-rasland@nvidia.com> <20210330080013.6922-2-rasland@nvidia.com> From: Ferruh Yigit X-User: ferruhy Message-ID: <52b7a13c-8323-ace4-4421-5b0d9d04cab6@intel.com> Date: Thu, 1 Apr 2021 17:51:10 +0100 MIME-Version: 1.0 In-Reply-To: <20210330080013.6922-2-rasland@nvidia.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit Subject: Re: [dpdk-dev] [PATCH v3 1/2] ethdev: add new ext hdr for gtp psc X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On 3/30/2021 9:00 AM, Raslan Darawsheh wrote: > Define new rte header for gtp PDU session container > based on RFC 38415-g30 > > Signed-off-by: Raslan Darawsheh > --- > lib/librte_net/rte_gtp.h | 34 ++++++++++++++++++++++++++++++++++ > 1 file changed, 34 insertions(+) > > diff --git a/lib/librte_net/rte_gtp.h b/lib/librte_net/rte_gtp.h > index 6a6f9b238d..bfaae26535 100644 > --- a/lib/librte_net/rte_gtp.h > +++ b/lib/librte_net/rte_gtp.h > @@ -61,6 +61,40 @@ 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 { general consensus in other protocols seems having '_hdr' suffix in the struct name, I can see this is extension but do you think does it make to add suffix? > + uint8_t ext_hdr_len; /**< PDU ext hdr len in multiples of 4 bytes */ > + uint8_t type:4; /**< PDU type */ > + uint8_t qmp:1; /**< Qos Monitoring Packet */ > + union { > + struct { > + uint8_t snp:1; /**< Sequence number presence */ > + uint8_t spare_dl1:2; /**< spare down link bits */ > + }; > + struct { > + uint8_t dl_delay_ind:1; /**< dl delay result presence */ > + uint8_t ul_delay_ind:1; /**< ul delay result presence */ > + uint8_t snp_ul1:1; /**< Sequence number presence ul */ > + }; > + }; > + union { > + struct { > + uint8_t ppp:1; /**< Paging policy presence */ > + uint8_t rqi:1; /**< Reflective Qos Indicator */ > + }; > + struct { > + 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 */ > + uint8_t data[0]; /**< data feilds */ > +} __rte_packed; > + > /** GTP header length */ > #define RTE_ETHER_GTP_HLEN \ > (sizeof(struct rte_udp_hdr) + sizeof(struct rte_gtp_hdr)) >