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 2D857A034C; Mon, 2 May 2022 22:05:09 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 7701541109; Mon, 2 May 2022 22:05:08 +0200 (CEST) Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on2071.outbound.protection.outlook.com [40.107.244.71]) by mails.dpdk.org (Postfix) with ESMTP id AA00141614 for ; Mon, 2 May 2022 22:05:06 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UBUt2qrE61wmPPaJV1c/VTn9aDMLWxUuJsRlXDLg5agLEjzvvCbVmtF5ZS/tS1RFhT/WMXYE4jQlCG7aHv3D8DIZ74P5R1plXZXqpT+h8uFoavRBsiA6GL/BPet1gPvMGwf2gN+rB1r1GASAKdWfcHizvRRQKbb0d21OYKQPMNt78v/y4akI8+NK/sZpMqpE5br5StBMx8BlwD6+1iTKNgZByHqglIxZ64q+GFSho784WKYGFXKSlOZTv0zg1iKQvc0bZrfrNyRM0ADgD1Pq/N/NkEB9bL6qwAPVfbcM6tVpphFZWu4jk9nS190QQ/e6WySeGQldwiSYbX/cHp9Fqg== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=LFpWkNoNR5cnhT2vjFscqupnCppeGfDrcm1KVf/73gA=; b=l7YTwVGuTgxSfDG85xvONOOEG9r2Mw2Ox2vSCNpzSqBpa2iQGCCUlwiKg6vl0ImKTW5ayY+ajqCvJ0upXQOu9zJQKl+VpihJHo4zXiVolDQCgBD4Da27Wa4U19CRriEcM3OByDAE4N2gowtoBGTTOowM0a74PlbTrwL+wklX4IbybL6aCpSHMDzmCI+Nd7Z7Zxw9xjkBljTnaV+x88jbDIP7ioEehhiDLkGchr5HnwDJjOM8GOPXQt+2Ib5OD6O847zrLIu2zBEGrHdxQVaA3Hr/D9i+JiUdCNzJHXmWDcJTrSFiH7pVakSOs9WcxLwpv6T+uKod+Ak4gA9byuvd9w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 12.22.5.235) smtp.rcpttodomain=intel.com smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject 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=LFpWkNoNR5cnhT2vjFscqupnCppeGfDrcm1KVf/73gA=; b=OZaVV7/vcrWwz4cOZrLCiQEyfTUQHwU9ifZLVKcQyZXOG0al0G83Gpul93YMqZfIlLkBHLBMFMYE5ntU0rvDj+2mSVWfhvGmwVB2+z1rOdhAntqJagUcgK456SHOwLTd9SVr01pYLnmJZM4S0R5w6G6aWiY0aFln+PzEoaChcU0kUiWlfvnfic+qMW5Ahuhn4D4k1yabk9Aibvx6BUCwtEMZbhJbIHTpKFQZaoB9NuZ4M9WHesE0LJMWWQoey1vvb+qTXUIiAdmSNuAjqa5U5GQwOKvzP6dlbj8OCajkooYOfGJ+Sd4768IPZ4pNI6jh17ytG2lvovMTB66A8T2EmQ== Received: from MW2PR2101CA0015.namprd21.prod.outlook.com (2603:10b6:302:1::28) by PH0PR12MB5645.namprd12.prod.outlook.com (2603:10b6:510:140::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5186.23; Mon, 2 May 2022 20:05:04 +0000 Received: from CO1NAM11FT064.eop-nam11.prod.protection.outlook.com (2603:10b6:302:1:cafe::d1) by MW2PR2101CA0015.outlook.office365.com (2603:10b6:302:1::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5250.4 via Frontend Transport; Mon, 2 May 2022 20:05:04 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 12.22.5.235) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 12.22.5.235 as permitted sender) receiver=protection.outlook.com; client-ip=12.22.5.235; helo=mail.nvidia.com; Received: from mail.nvidia.com (12.22.5.235) by CO1NAM11FT064.mail.protection.outlook.com (10.13.175.77) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.5206.12 via Frontend Transport; Mon, 2 May 2022 20:05:04 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) by DRHQMAIL107.nvidia.com (10.27.9.16) with Microsoft SMTP Server (TLS) id 15.0.1497.32; Mon, 2 May 2022 20:05:02 +0000 Received: from pegasus01.mtr.labs.mlnx (10.126.231.35) by rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.22; Mon, 2 May 2022 13:04:59 -0700 From: Alexander Kozyrev To: CC: , , , , , , , , , , , Subject: [PATCH v2 1/3] ethdev: add meter color matching to Flow API Date: Mon, 2 May 2022 23:04:37 +0300 Message-ID: <20220502200439.4100965-2-akozyrev@nvidia.com> X-Mailer: git-send-email 2.18.2 In-Reply-To: <20220502200439.4100965-1-akozyrev@nvidia.com> References: <20220408024658.2004918-1-akozyrev@nvidia.com> <20220502200439.4100965-1-akozyrev@nvidia.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [10.126.231.35] X-ClientProxiedBy: rnnvmail202.nvidia.com (10.129.68.7) To rnnvmail201.nvidia.com (10.129.68.8) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 19214c85-bbb2-425d-8ecd-08da2c770c19 X-MS-TrafficTypeDiagnostic: PH0PR12MB5645:EE_ X-LD-Processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: o34c3+Rp762sqcbqrXprwhia9FG1NSmW1+3dTNkCT80G1ll8jIQyKsxNNjaHG6MRgdmBtd18Ahx1Z6GmqyTcJpgknsbjl551QscE9XC7JeXx2Swo5rQonf+usTNgq0rdl9s7X00A+hOdWo2qDj2ZTxcFRlWxiBQIeSikyIEMayJJdeBu4Bexk5KLd2R1e7Xtjq+EF8EG+nr429DgVmxurprjWHDXTAx9u+zhWTOn5vuoQPPeZVCZPgk3mQtnP9o/uFeWAuq7WNMRjyy80nCY/Mkj2BNq5IKqwaeaIl9ntvs61i5OsJv9YGemrhqXlHb2mz3lvcVuFd+1fFWL0j/zHrHTRMWbBWQ7AsYe5M5DLoCtVdFsxb+5KYPvacAfTUkM1yhJluBUO+224CMDqZWVoGduRSNggBlyxeLL6JALL1D3cLZ2Tp1oYnCgv7sGSgrxItvW2Dp2iLpq1d8US958IdkqLNYlEB9XQvCuE24KCzo7GlhfTHEurbtOrcWSbHtIxGWjiIk3zQSrybfH366RMmX4XE4+vzJ5fhVVUK8lQvfm8oe5naaiEBglzfg6JTPIbuoE72UzBZXQZClu7I1FkV3Dbgs2TE7y8DScB703tsspRWyOz/bOvBaIacXFoCqWfjd1710XjmnyZ9npKPvYCYodSRqz7Y6Sl9unqwq1/R/zS2ronmHxmjfwoK23oAHf+8J1oO/j2nTROQ83To5mFg== X-Forefront-Antispam-Report: CIP:12.22.5.235; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:InfoNoRecords; CAT:NONE; SFS:(13230001)(4636009)(40470700004)(36840700001)(46966006)(82310400005)(6916009)(5660300002)(81166007)(83380400001)(316002)(54906003)(7416002)(4326008)(8676002)(70206006)(70586007)(86362001)(8936002)(40460700003)(36860700001)(47076005)(1076003)(2616005)(26005)(426003)(186003)(36756003)(16526019)(336012)(2906002)(356005)(508600001)(6666004)(36900700001); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 May 2022 20:05:04.0828 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 19214c85-bbb2-425d-8ecd-08da2c770c19 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[12.22.5.235]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT064.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR12MB5645 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 Introduce Meter Color pattern item to provide greater flexibility for Traffic Metering handling in the RTE Flow API. Matching on a color marker allows a user to manage Metering policies as part of common flow rules management. Signed-off-by: Alexander Kozyrev --- lib/ethdev/rte_flow.h | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/lib/ethdev/rte_flow.h b/lib/ethdev/rte_flow.h index d8827dd184..67f54fba0e 100644 --- a/lib/ethdev/rte_flow.h +++ b/lib/ethdev/rte_flow.h @@ -671,6 +671,12 @@ enum rte_flow_item_type { * See struct rte_flow_item_gre_opt. */ RTE_FLOW_ITEM_TYPE_GRE_OPTION, + /** + * Matches Meter Color. + * + * See struct rte_flow_item_meter_color. + */ + RTE_FLOW_ITEM_TYPE_METER_COLOR, }; /** @@ -1990,6 +1996,26 @@ static const struct rte_flow_item_ppp rte_flow_item_ppp_mask = { }; #endif +/** + * @warning + * @b EXPERIMENTAL: this structure may change without prior notice + * + * RTE_FLOW_ITEM_TYPE_METER_COLOR + * + * Matches a meter color set in the packet meta-data + * (i.e. struct rte_mbuf::sched::color). + */ +struct rte_flow_item_meter_color { + enum rte_color color; /**< Packet color. */ +}; + +/** Default mask for RTE_FLOW_ITEM_TYPE_METER_COLOR. */ +#ifndef __cplusplus +static const struct rte_flow_item_meter_color rte_flow_item_meter_color_mask = { + .color = RTE_COLORS, +}; +#endif + /** * Matching pattern item definition. * -- 2.18.2