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 DB40942BF0; Wed, 31 May 2023 12:54:35 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id CA3B840F18; Wed, 31 May 2023 12:54:35 +0200 (CEST) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by mails.dpdk.org (Postfix) with ESMTP id C38D240ED7 for ; Wed, 31 May 2023 12:54:33 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1685530474; x=1717066474; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=3qzskTqE3EOIJq8A8UeStt7t6sMP21kJhR/9J6fgnco=; b=lSEtLPBMfMUiY0rlnHIMugsAm34hFmeBtL/DOiFLsJ1EsnV8oFfJr5En OG7gdcEFf6VNilfbc8voIMj2P//Qqjr82WAsIHYskNPFtqTaFHu3qXPmW JyM5Y23J+bCxV6UrK9+nmQgn8bmTEMeWxY/s/w3PSwnhwR91ag4qWmHK9 d1VHONyHplGJd6M662zD2lx0q00vr2/Z4xrb3s89s9VaxiLxFk082yZAt 07Wk/c+kHDhbbcVBcceFptyaL+YBDzhVhfUa4Hv6QEE5ZCtrenLBTuVva gcLIJeFPtrGnFjMXK62f9N5s4eAB/iUO8ZITcOpr6GcUZ6D29s0kYR++S w==; X-IronPort-AV: E=McAfee;i="6600,9927,10726"; a="335547938" X-IronPort-AV: E=Sophos;i="6.00,205,1681196400"; d="scan'208";a="335547938" Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 31 May 2023 03:54:32 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10726"; a="1036999338" X-IronPort-AV: E=Sophos;i="6.00,205,1681196400"; d="scan'208";a="1036999338" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by fmsmga005.fm.intel.com with ESMTP; 31 May 2023 03:54:32 -0700 Received: from orsmsx602.amr.corp.intel.com (10.22.229.15) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 31 May 2023 03:54:32 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23 via Frontend Transport; Wed, 31 May 2023 03:54:32 -0700 Received: from NAM02-BN1-obe.outbound.protection.outlook.com (104.47.51.40) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.23; Wed, 31 May 2023 03:54:31 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WdtaGmaJDFd5Rbj4jMoK1sq4Dg2A8MzLmzM5mdiNYOS/0emrNYvA77hXyxnCXVZ/juznlbQs/p9sF0gaZ372SG6BeXtGuxMVUt1nkxAA8bSAR3RFDIiaTZ7aDUp10ZWfbnPYhvczkEGLmA7vSrrtNTRbhjGWdEf6BweUJmLnB+1uBn8ZG4TnAi8FBx5UNjK9LNKC327t7xcYncT063WEEXa3qzhPLzZ7GPJ31ZDKg6k/dRUR3f7QzW3X0cVu7xxXbZQj5paIr6DTKfY2FaGxMRC4EILFCWAZOVL8mZ5O94UQSdqtRzdaE2FEKN/GObZY09DVqnXlF0Pu8j8G1LYcjQ== 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=UVK/Erw+yQeLZE2N2Qn+A6jCpqIXfYHIJfgn9hxQUUY=; b=QpgxVDeDIKGvTCbpv0+OWy8AF0Y9MAMtDKxLeAi4um0wpG4Ha2sFImCCY1e3q1Le85n77DcTfPxeh3GfHUQEYxmKg8ZF057RLZLAoDFK9pvv9k1iEVW1fAORxG127t89SI/Q/w55V3UmXU98NU53lLRJk2wgg1gumc+cTVQdMeNftO2lbvSlOPNoi2YjUQ0FrfUC1lQeAtuRAtU8M1Z0wdYg5q8vAlT/45MpQFQ1UkLM/qDn3z/10odsqCjLK43aXHrTENGdP7049/fzVVYF1e2p7jglh+3uy9a80AuMOLEXZ+L8cgLcm/3i+KsIkwpite3on/A9gdxsI0a4nBr5Yg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from LV2PR11MB5997.namprd11.prod.outlook.com (2603:10b6:408:17f::10) by SJ2PR11MB7670.namprd11.prod.outlook.com (2603:10b6:a03:4c3::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.21; Wed, 31 May 2023 10:54:29 +0000 Received: from LV2PR11MB5997.namprd11.prod.outlook.com ([fe80::a1be:2406:376c:612a]) by LV2PR11MB5997.namprd11.prod.outlook.com ([fe80::a1be:2406:376c:612a%7]) with mapi id 15.20.6433.024; Wed, 31 May 2023 10:54:29 +0000 From: "Xing, Beilei" To: "Liu, Mingxia" , "Wu, Jingjing" CC: "dev@dpdk.org" , "Wang, Xiao W" Subject: RE: [PATCH v4 13/13] net/cpfl: support hairpin bind/unbind Thread-Topic: [PATCH v4 13/13] net/cpfl: support hairpin bind/unbind Thread-Index: AQHZj6iEhgy62ueHP0S2l7xchhs3+69yNxGAgAIF9kA= Date: Wed, 31 May 2023 10:54:29 +0000 Message-ID: References: <20230519073116.56749-1-beilei.xing@intel.com> <20230526073850.101079-1-beilei.xing@intel.com> <20230526073850.101079-14-beilei.xing@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: LV2PR11MB5997:EE_|SJ2PR11MB7670:EE_ x-ms-office365-filtering-correlation-id: e6a96b6e-69f5-435b-cf3e-08db61c5689d x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 87izpdR7qcIzGBmwFoFlbKAJiG0+Ea19fCXn48BmTI8YGwkksMemhB8B1+EnXtfmvSxQv7DgAZA4VqU1s6X8dP9D/Inu3oMfnaaSvmLtdjjwRDFbqS8agw1wxQhQ1omA2/4LKVBXD1CyX3HhNT9GGC+H6oxyO67y6kWBQDMdUJMJfcbHsFD1uOmzi+rfLLoWMb78Our3kG7mUOfIIpaAaZ8vuUgtbghieFVzXtMWFd2CEAPIpEGcX8cuVaoMjpU9Nb9VpGNI9xzZLrEQyMHFSemn7GH4FkeQdOyxqXyGttNbQX1nGqtjRB1ohZuJF0860FbSkBLyltf25Y9CWawTL/oxsakJGQYdLPLSrV3zHSWZrtYABXJMMOcN7SiNTCXVmYiHKOkeLH8HhgKcnffC71gfjRzv0cCgICPaEx1ffZQPPHMz6Rux1IRV/HnRanmy0geNrOg4o2HCecauFIVqhWKuwhvrSHw6wwCN+WTJo7UE+7ID/lQ0TI2/Bu/deEQ4wI2ce5Zl6VEiTy27ky7f6aMQZCNuDMGCwGPN2PnK3fsrA33dPWzEHryP0kYr9D/f85Mm0Gp7gCQA5LLIhWUIHlukU9/meSo/0Ag4buCPvBzTUg8Au+CsP/ktmJUNRfw2 x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:LV2PR11MB5997.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(366004)(396003)(376002)(346002)(39860400002)(136003)(451199021)(38070700005)(83380400001)(2906002)(186003)(38100700002)(82960400001)(122000001)(55016003)(8936002)(4326008)(478600001)(8676002)(86362001)(52536014)(66946007)(66556008)(6636002)(76116006)(66446008)(64756008)(5660300002)(53546011)(66476007)(41300700001)(7696005)(71200400001)(316002)(26005)(110136005)(54906003)(9686003)(6506007)(107886003)(33656002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?x+oZ8RgwwaRoUk7NE1Lp776ixxSFl9kex32jXKhZhClxyO3AI95V+7cDXzRh?= =?us-ascii?Q?Q4b1KNF+1JJO5c6fWPW1nkwZXAengNCd7eydMPT+UITOcAkviO8hIQKgBtQO?= =?us-ascii?Q?UCDlGMcDn1Bgd8Hv0pIoDvaRyHCLMe07tLIE2/pkE4NoDy/sjSDD2bQT+a4Z?= =?us-ascii?Q?MeFm85NumyGHsYCoINlJrQSPUQcLzWQeMsOcRa0Hm9QDCye/XJbLOkUYEHU+?= =?us-ascii?Q?XrtVTcDYV/YUjKBzUe48c50i29OFi6lUa06DZWVPPcG/4OROtBQ0Ou3cMNEx?= =?us-ascii?Q?FZFdJKdrSdekksySDEHKe4sgKCybxeSz8BswixZlYayqljdaU18jL5EyRCa7?= =?us-ascii?Q?HqI2PMg2CYaGBQ4j8zGZgAi71dWXIwN+GEtD0duF6YNzcGifxFu5bXqxKvRi?= =?us-ascii?Q?DDVPnxdzkxRC9+i3n2j/AMTC6mrmhKA4Zg/vpQKauyU3y7K+Mt65VI4XzpSb?= =?us-ascii?Q?QYa0MBuFnlVpBUQOuMdwysXof0+KVZqa8GIJdWvVwCkovjOPq3l9csI92IKT?= =?us-ascii?Q?VKeljYGlCiw9bPkKY3u3n2ZPej3G70vJ8LGBshJWt47Vlw3e3TRcuhR+tHOJ?= =?us-ascii?Q?ZUyoiRkj8iX0qrhfXsjxmTKm8lKM8Qrr7px2nuXsX5v028/UlMwDlpuHcxz3?= =?us-ascii?Q?7L07bEq4va2iQ7arFbJqHwXTrFD/F4BuM9SL1AGm57fBSoEdmjVFkc1U6cK7?= =?us-ascii?Q?9e5Cqk/y564VEUSgrYe26HvgNeDwcvtyX2tDlHWWPHPzmL5W7DTcbdr1LqoL?= =?us-ascii?Q?lLFlWL+qcygFApAzrbSsPMabPGl/cwUF0sM3FY0lgFsDAoGOkhXX8CLocxn9?= =?us-ascii?Q?QJEEYjAIOCoTacsrMPJeeORYmMWPcmUW6NWxiDVDlUlu9cZDmAmpe6tncKZl?= =?us-ascii?Q?YmUlzR2d4k7PjcUaw5b6nKaKiYsbJsuIo3l4kU5hL5IjcV2kphYNYbmPVYul?= =?us-ascii?Q?q+GODa+lahuGfBsZbNAgRm7UpoRnEl1ZJdh5l4SAeADI9GwqfcVwvjX2OxnK?= =?us-ascii?Q?pwQ8+cwEyF7TA5zGvnet6l+UIUSTjhNqZokvvvcbIB0N2PDt7P9edrA3tp7N?= =?us-ascii?Q?FJWl4k3krSAKym92UA+uSUZJQ4qqHdl2u5YUiQPF7Keqb2D2FaJEaIE6W2iB?= =?us-ascii?Q?EFrcVVvYaIjv0OdcRwSYfEyO7l2nlARzpl5sSGuc9CahEOt4nnliy1xFGXh4?= =?us-ascii?Q?Aw0CI82wNAxcHyXWt3EvBIFPGRXu0b8/cFp5E0LqAwvYgwDlhtaRkkl0km/f?= =?us-ascii?Q?4QUDZSYh0Rccr2Y7lPPv8S4AIMjjUXlVWsoULZqOG8V8tigfV73vLpEFVtGu?= =?us-ascii?Q?BTkt3ndtwHG3XB+ZUflpJW/egvSC4NGBxqtuUyNtyWeF3yXU6gU2CaT8rIBs?= =?us-ascii?Q?xKEEJYvozP8hyw0OFMLD4IcpogVk9UEtfGU4/NTdAsIB1qkig0xMkoFgnpRZ?= =?us-ascii?Q?gz7w47fcG2PO/uvubJ8gVI+zmqypuI0Awch7hr63Q18+7vUGT6Q4opCQdGyq?= =?us-ascii?Q?/n0RuVgo5egZlBStuzUzpwmpVNYdAKjcUfpRWTgg2ySKRVnYOK9e4cs8bVTL?= =?us-ascii?Q?AXnDbWGCTQRoVo64E36PnfZv5iTvmXWJDDAq0NgX?= Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: LV2PR11MB5997.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: e6a96b6e-69f5-435b-cf3e-08db61c5689d X-MS-Exchange-CrossTenant-originalarrivaltime: 31 May 2023 10:54:29.4503 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: /CqlHD20pP0kGJWk4gyxgaofUw5ucTQg3GRiY9z0Sd3L53OmKIRsbJp0yPMY+2kNJ7++QV426VrLRmQdC7aVPg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR11MB7670 X-OriginatorOrg: intel.com 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 > -----Original Message----- > From: Liu, Mingxia > Sent: Tuesday, May 30, 2023 12:00 PM > To: Xing, Beilei ; Wu, Jingjing > Cc: dev@dpdk.org; Wang, Xiao W > Subject: RE: [PATCH v4 13/13] net/cpfl: support hairpin bind/unbind >=20 >=20 >=20 > > -----Original Message----- > > From: Xing, Beilei > > Sent: Friday, May 26, 2023 3:39 PM > > To: Wu, Jingjing > > Cc: dev@dpdk.org; Liu, Mingxia ; Xing, Beilei > > ; Wang, Xiao W > > Subject: [PATCH v4 13/13] net/cpfl: support hairpin bind/unbind > > > > From: Beilei Xing > > > > This patch supports hairpin_bind/unbind ops. > > > > Signed-off-by: Xiao Wang > > Signed-off-by: Beilei Xing > > --- > > drivers/net/cpfl/cpfl_ethdev.c | 137 +++++++++++++++++++++++++++++++++ > > drivers/net/cpfl/cpfl_rxtx.c | 28 +++++++ > > drivers/net/cpfl/cpfl_rxtx.h | 2 + > > 3 files changed, 167 insertions(+) > > > > diff --git a/drivers/net/cpfl/cpfl_ethdev.c > > b/drivers/net/cpfl/cpfl_ethdev.c index > > d6dc1672f1..4b70441e27 100644 > > --- a/drivers/net/cpfl/cpfl_ethdev.c > > +++ b/drivers/net/cpfl/cpfl_ethdev.c > > @@ -1114,6 +1114,141 @@ cpfl_hairpin_get_peer_ports(struct > rte_eth_dev > > *dev, uint16_t *peer_ports, > > return j; > > } > > > > > > static int > > diff --git a/drivers/net/cpfl/cpfl_rxtx.c > > b/drivers/net/cpfl/cpfl_rxtx.c index 38c48ad8c7..ef83a03c2b 100644 > > --- a/drivers/net/cpfl/cpfl_rxtx.c > > +++ b/drivers/net/cpfl/cpfl_rxtx.c > > @@ -1011,6 +1011,34 @@ cpfl_switch_hairpin_bufq_complq(struct > > cpfl_vport *cpfl_vport, bool on) > > return err; > > } > > > > +int > > +cpfl_switch_hairpin_complq(struct cpfl_vport *cpfl_vport, bool on) { > > + struct idpf_vport *vport =3D &cpfl_vport->base; > > + uint32_t type; > > + int err, queue_id; > > + > > + type =3D VIRTCHNL2_QUEUE_TYPE_TX_COMPLETION; > > + queue_id =3D cpfl_vport->p2p_tx_complq->queue_id; > > + err =3D idpf_vc_ena_dis_one_queue(vport, queue_id, type, on); > > + > > + return err; > > +} > > + > > +int > > +cpfl_switch_hairpin_bufq(struct cpfl_vport *cpfl_vport, bool on) { > > + struct idpf_vport *vport =3D &cpfl_vport->base; > > + uint32_t type; > > + int err, queue_id; > > + > > + type =3D VIRTCHNL2_QUEUE_TYPE_RX_BUFFER; > > + queue_id =3D cpfl_vport->p2p_rx_bufq->queue_id; > > + err =3D idpf_vc_ena_dis_one_queue(vport, queue_id, type, on); > > + > > + return err; > > +} > > + > [Liu, Mingxia] Can cpfl_switch_hairpin_bufq_complq() in patch 9/13 be > optimized by calling cpfl_switch_hairpin_complq() and > cpfl_switch_hairpin_bufq()? Yes, the functions are duplicated. Refined in next version. > > int > > cpfl_switch_hairpin_rxtx_queue(struct cpfl_vport *cpfl_vport, > > uint16_t logic_qid, > > bool rx, bool on) > > diff --git a/drivers/net/cpfl/cpfl_rxtx.h > > b/drivers/net/cpfl/cpfl_rxtx.h index > > 42dfd07155..86e97541c4 100644 > > --- a/drivers/net/cpfl/cpfl_rxtx.h > > +++ b/drivers/net/cpfl/cpfl_rxtx.h > > @@ -114,6 +114,8 @@ int cpfl_hairpin_txq_config(struct idpf_vport > > *vport, struct cpfl_tx_queue *cpfl int > > cpfl_hairpin_rx_bufq_config(struct cpfl_vport *cpfl_vport); int > > cpfl_hairpin_rxq_config(struct idpf_vport *vport, struct cpfl_rx_queue > > *cpfl_rxq); int cpfl_switch_hairpin_bufq_complq(struct > > cpfl_vport *cpfl_vport, bool on); > > +int cpfl_switch_hairpin_complq(struct cpfl_vport *cpfl_vport, bool > > +on); int cpfl_switch_hairpin_bufq(struct cpfl_vport *cpfl_vport, bool > > +on); > > int cpfl_switch_hairpin_rxtx_queue(struct cpfl_vport *cpfl_vport, uint= 16_t > qid, > > bool rx, bool on); > > #endif /* _CPFL_RXTX_H_ */ > > -- > > 2.26.2