From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
	by inbox.dpdk.org (Postfix) with ESMTP id ADB2AA034F;
	Tue, 30 Mar 2021 10:01:38 +0200 (CEST)
Received: from [217.70.189.124] (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id CB1D6140DC2;
	Tue, 30 Mar 2021 10:01:27 +0200 (CEST)
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on2071.outbound.protection.outlook.com [40.107.237.71])
 by mails.dpdk.org (Postfix) with ESMTP id B47F4406B4
 for <dev@dpdk.org>; Tue, 30 Mar 2021 10:01:24 +0200 (CEST)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=H8bx4998jfTN/b2CLpwF2HIKw6dZua/QpKStAi+GGgv53DpVTdQi2LmGn+d6RXmdSDfW57pvbb93DpAWIYRvPXuKl8SGVUsyTvpJWOQsei3XAxtq9o3LpVEPD1XhgOxUUbl3W2AN6v/zyol/qnj89bH7FLW276AafciEf/4c88EkJtXa6Jp5cZrpY/x9ck2Jiaw0/MA3Yvyv5W281xB63qF5Qkb22YpVbjlFiIDQdC6c+NKpcREjqUiH7KXi8F0yD6uK6zrzYWKJQNACM05tSE8Niq6P2zVdIJTIjZ+cpXB4x5U8JrkCVt83Cn1ih3vq5WiZiHiEffl61EXXS0WvOQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=nik0j/INBjXmUOY0BMkcXtFbBGP9p1ayknf5Pu/gM8w=;
 b=L7dJzUZuN+jZKSzYj9OTcs5ov2umOcakOcw1ANEaAQViNZsF0T7x0S/lPG3Mj3RPRihSrCje4jnBFi7nSJxC72RpqKRZ+Hcjjyq6a4WLpeXDriImgMVdAqcLKoQUVVlfVaAQURPwaiCeFYxikOu5JugS3VThqq+EoPEaEnrtTw+CaQqKxvq/CM9QdoDYWwgM2C6AvrKspVBLiEvOc/XVSrKD/tnOWByjieUIQBO+sMS0jcA0X0zyxw0c7lg3bKs1gBF8PlW75ZV5CkO64tubHO8vC2QKlNdANHUiMq68/TPSMjLAT/oYUmfwU0ntieByNacqXW27hvz1a1BhoQ3SLg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 216.228.112.34) smtp.rcpttodomain=oktetlabs.ru smtp.mailfrom=nvidia.com;
 dmarc=pass (p=none sp=none pct=100) action=none header.from=nvidia.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com;
 s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=nik0j/INBjXmUOY0BMkcXtFbBGP9p1ayknf5Pu/gM8w=;
 b=ZIUJn8ZJTiLWTZkfD82d//ymVb2TgY07W1ydNbZLJ+ixlbPqmY2aDpTNjbDbdrYkNgPu5qSjJGvMUiQTmQ+LTHIBXCFFsrUFZkicPQ5vvT19+vv/FurXAZKvLWirYEoBbByRNIZq5Yz3rXFh9MwR6Eb7c7zrEO4LlseiF3x+MNz4//IOkLLjX2WZgRz4H+ViyB+m/tLRY8V1/skQnf5G+8tYYQkOdxpFm+AtEcCPQJLNWcavOfbdakzvGTzhiSKwIiEAsLUI+TsSbj6ZGIWGq6wUSs7JH+NT2n6XfbxZs4JMsXc8TWxaIveri5+OLli7GaSgW1zBshxjX4k0ytRUlw==
Received: from MWHPR17CA0090.namprd17.prod.outlook.com (2603:10b6:300:c2::28)
 by BYAPR12MB3048.namprd12.prod.outlook.com (2603:10b6:a03:ad::33)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3977.31; Tue, 30 Mar
 2021 08:01:23 +0000
Received: from CO1NAM11FT043.eop-nam11.prod.protection.outlook.com
 (2603:10b6:300:c2:cafe::ce) by MWHPR17CA0090.outlook.office365.com
 (2603:10b6:300:c2::28) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3977.26 via Frontend
 Transport; Tue, 30 Mar 2021 08:01:23 +0000
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.112.34)
 smtp.mailfrom=nvidia.com; oktetlabs.ru; dkim=none (message not signed)
 header.d=none;oktetlabs.ru; dmarc=pass action=none header.from=nvidia.com;
Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates
 216.228.112.34 as permitted sender) receiver=protection.outlook.com;
 client-ip=216.228.112.34; helo=mail.nvidia.com;
Received: from mail.nvidia.com (216.228.112.34) by
 CO1NAM11FT043.mail.protection.outlook.com (10.13.174.193) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id
 15.20.3955.18 via Frontend Transport; Tue, 30 Mar 2021 08:01:21 +0000
Received: from nvidia.com (172.20.145.6) by HQMAIL107.nvidia.com
 (172.20.187.13) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Tue, 30 Mar
 2021 08:00:32 +0000
From: Raslan Darawsheh <rasland@nvidia.com>
To: <dev@dpdk.org>
CC: <ferruh.yigit@intel.com>, <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>
Date: Tue, 30 Mar 2021 11:00:12 +0300
Message-ID: <20210330080013.6922-2-rasland@nvidia.com>
X-Mailer: git-send-email 2.29.0
In-Reply-To: <20210330080013.6922-1-rasland@nvidia.com>
References: <20210330075036.6579-2-rasland@nvidia.com>
 <20210330080013.6922-1-rasland@nvidia.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-Originating-IP: [172.20.145.6]
X-ClientProxiedBy: HQMAIL111.nvidia.com (172.20.187.18) To
 HQMAIL107.nvidia.com (172.20.187.13)
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 247052bc-87cf-45f3-f7f2-08d8f35201a3
X-MS-TrafficTypeDiagnostic: BYAPR12MB3048:
X-Microsoft-Antispam-PRVS: <BYAPR12MB304812B20B5A559A0D80ACBFCF7D9@BYAPR12MB3048.namprd12.prod.outlook.com>
X-MS-Exchange-Transport-Forked: True
X-MS-Oob-TLC-OOBClassifiers: OLM:2000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: +BD6A4D1YnunCi8QqGXDNZ4tz+Kipk6xwwtM05K/GmHgLOXIIQJOyTxICkEJ8G6GH4MxMaEh/TBfom781yYQoBqN+hnOSmGMLvj8QwIEEi6zTE4ALS8KKRtl7B+aRB9kYGXrixdKjk4PYH37v63DWXHkvuerYnGeaeWfvY5T2kyd9J2v8vWkj9hs21hQx2LBmYh1XLbS07wk4osK3ldm8DOXbLuqlUxCqOazbgpVSff5v3JOccNEEQ8EetP6JRBa3xATPIoXxNH6Bms5FcTfulIkK1nw0WJzdiqErNaFEXMyzbq7/1CPonKjMrWOVb03f/gdXBvcYp51/aQNQyWee0OcSIjCgN5Oww4scqkpd5R/P3awoGXAn0aO+N2QzFV5bY74AvXVWx+we4kGawr8DbiqynEzn4tRO8n1CN/yOJcPnQ9NWM91cH5gRHVQjWEAjPjto9QX/QfWWhnQzJK5jOVCjSzSX1ASoq/7DkzlZQmMQLCzJsApGte+Kt5eDg72QlfSkh733QvLjf3jrGBFP8QciUTkeyns75/9c4QDfYGjB8cWk3UB0l6asrcbYid7Lgpy/SSO2CyNK1vsDFccujQT5MJrHASTzWbkD/BJ0iCs5ltm7oya0zEvbZ2OiuO+0mRWsWMcq3XZj1fX5rNRWzptDevzex6I/5b9Q4cZ7XM=
X-Forefront-Antispam-Report: CIP:216.228.112.34; CTRY:US; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:schybrid03.nvidia.com; CAT:NONE;
 SFS:(4636009)(346002)(136003)(39860400002)(396003)(376002)(46966006)(36840700001)(1076003)(4326008)(16526019)(2616005)(82310400003)(5660300002)(8676002)(55016002)(6666004)(426003)(6916009)(336012)(7636003)(356005)(186003)(36756003)(478600001)(26005)(8936002)(70586007)(54906003)(316002)(36906005)(47076005)(70206006)(2906002)(36860700001)(86362001)(82740400003)(6286002)(7696005)(107886003);
 DIR:OUT; SFP:1101; 
X-OriginatorOrg: Nvidia.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Mar 2021 08:01:21.2206 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 247052bc-87cf-45f3-f7f2-08d8f35201a3
X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.112.34];
 Helo=[mail.nvidia.com]
X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT043.eop-nam11.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR12MB3048
Subject: [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 <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org
Sender: "dev" <dev-bounces@dpdk.org>

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

Signed-off-by: Raslan Darawsheh <rasland@nvidia.com>
---
 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 {
+	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))
-- 
2.29.0