From patchwork Wed Mar 20 15:38:58 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ori Kam X-Patchwork-Id: 51402 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id C36C71B137; Wed, 20 Mar 2019 16:39:08 +0100 (CET) Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-eopbgr80085.outbound.protection.outlook.com [40.107.8.85]) by dpdk.org (Postfix) with ESMTP id D7AD81B131 for ; Wed, 20 Mar 2019 16:39:07 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=i5nTF1pLDe9yAwXZ7Qfnht0qXMc7wW7fzhOCZylh0lE=; b=kC4DyNVwLnPHkC/RDd6p2/8EHTyofSfZCLQ5yAXb5bUQiCDFGUWzsFZ5XRrWDzrO1G3I0bVyHWlroCSP6N/e2wXGNXm5/0ClyvnyzW5PanXY9+aMeGBwVtNE0KnLONGrAcYQEZzltjFJZWTq/JFq5HHJezDS2O567+Dvw0WRe+A= Received: from AM4PR05MB3425.eurprd05.prod.outlook.com (10.171.190.15) by AM4PR05MB3156.eurprd05.prod.outlook.com (10.171.186.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1709.14; Wed, 20 Mar 2019 15:38:58 +0000 Received: from AM4PR05MB3425.eurprd05.prod.outlook.com ([fe80::4cb3:d1fa:a6a:1d11]) by AM4PR05MB3425.eurprd05.prod.outlook.com ([fe80::4cb3:d1fa:a6a:1d11%3]) with mapi id 15.20.1709.015; Wed, 20 Mar 2019 15:38:58 +0000 From: Ori Kam To: Shahaf Shuler , Yongseok Koh , Matan Azrad CC: "dev@dpdk.org" , Ori Kam , Slava Ovsiienko Thread-Topic: [PATCH 0/3]net/mlx5: Add Direct Rule support Thread-Index: AQHU3zMIOfjPeycRZU+ZwuQdMvr3Hg== Date: Wed, 20 Mar 2019 15:38:58 +0000 Message-ID: <1553096315-91832-1-git-send-email-orika@mellanox.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: LNXP123CA0004.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:d2::16) To AM4PR05MB3425.eurprd05.prod.outlook.com (2603:10a6:205:b::15) authentication-results: spf=none (sender IP is ) smtp.mailfrom=orika@mellanox.com; x-ms-exchange-messagesentrepresentingtype: 1 x-mailer: git-send-email 1.8.3.1 x-originating-ip: [37.142.13.130] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 49ab962c-a50c-4029-f533-08d6ad4a2b3d x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600127)(711020)(4605104)(4618075)(2017052603328)(7153060)(7193020); SRVR:AM4PR05MB3156; x-ms-traffictypediagnostic: AM4PR05MB3156: x-microsoft-antispam-prvs: x-forefront-prvs: 098291215C x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(346002)(39860400002)(376002)(136003)(396003)(366004)(189003)(199004)(106356001)(99286004)(36756003)(105586002)(50226002)(478600001)(4720700003)(305945005)(316002)(6512007)(54906003)(107886003)(110136005)(6636002)(186003)(66066001)(7736002)(26005)(71190400001)(14454004)(71200400001)(8936002)(68736007)(3846002)(6486002)(52116002)(102836004)(5660300002)(6506007)(386003)(6116002)(4326008)(81166006)(81156014)(476003)(2616005)(486006)(256004)(53936002)(8676002)(86362001)(6436002)(2906002)(97736004)(25786009); DIR:OUT; SFP:1101; SCL:1; SRVR:AM4PR05MB3156; H:AM4PR05MB3425.eurprd05.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: gqVTTcUwTvSOv9p7LZRwhjR/dm3+anqa2rT6MoxilgjT64qJ6NpU4cZqMXJWy8suadrkNuCTHS9qGpVwKTZ+lpOeNF0gDF3R0AgE2So6nrPee4pb5y3P/oC3GgfBDAN3PivS7TJFAf55i2Gv4ifxBFvsgF8R6eTOgfiIInZkW42TSIGg/CqsQYXjwFcffyB+Of2xbNfbOC3j1PpuR/QZ5lsMsGqboYekEBKaDVAz8F0EHD/54h7lOlnZSBYV3Ay14Odsrg81Ff8dcpX7kI+lnuaO4V87HKkqaO3ONQPodc3sgrGelOhHn/Bno6ko1ocQ5p4Yhu56xHS+Y1U04r0vts1ITFtiUUIZHQ1ckJC8bO2l7gBTE0Pu9t3//6Q/2zVrdIQVnBJDZageIFfj+IyaijynTbFuu2brQXmKIxKvwqc= MIME-Version: 1.0 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-Network-Message-Id: 49ab962c-a50c-4029-f533-08d6ad4a2b3d X-MS-Exchange-CrossTenant-originalarrivaltime: 20 Mar 2019 15:38:58.8522 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR05MB3156 Subject: [dpdk-dev] [PATCH 0/3]net/mlx5: Add Direct Rule support X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 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" This patch set adds support for Direct Rules API for MLX5 driver. As more and more applications like OVS are inserting and removing large number of flows, the flow insertion rate become more critical. In current MLX5 PMD rules are inserted to the device using the FW, this limits the max insertion rate. The solution is using a new set of API that are part of RDMA-Core. which enables bypassing the FW and writing the flows directly to the device, which results in a much faster insertion rate. Ori Kam (3): net/mlx5: prepare Direct Verbs for Direct Rule net/mlx5: add Direct Rules API net/mlx5: add jump action support for NIC drivers/net/mlx5/Makefile | 5 + drivers/net/mlx5/mlx5.c | 21 ++ drivers/net/mlx5/mlx5.h | 23 ++ drivers/net/mlx5/mlx5_flow.c | 1 + drivers/net/mlx5/mlx5_flow.h | 38 +++- drivers/net/mlx5/mlx5_flow_dv.c | 476 ++++++++++++++++++++++++++++++++++------ drivers/net/mlx5/mlx5_glue.c | 300 +++++++++++++++++++++---- drivers/net/mlx5/mlx5_glue.h | 50 +++-- drivers/net/mlx5/mlx5_prm.h | 24 +- 9 files changed, 810 insertions(+), 128 deletions(-)