Message ID | 1545949196-3355-2-git-send-email-motih@mellanox.com (mailing list archive) |
---|---|
State | Superseded, archived |
Delegated to: | Shahaf Shuler |
Headers |
Return-Path: <dev-bounces@dpdk.org> 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 273C358FA; Thu, 27 Dec 2018 23:20:22 +0100 (CET) Received: from EUR03-DB5-obe.outbound.protection.outlook.com (mail-eopbgr40044.outbound.protection.outlook.com [40.107.4.44]) by dpdk.org (Postfix) with ESMTP id 4D6582C54; Thu, 27 Dec 2018 23:20:19 +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=F6lV2XQolRqnQcsPgX6GgGiMHcvuwtycqplZDgMCC8g=; b=k254OqPXIDETucAZ83a96TMqeIckYc2ojYYtd6TWGHtUPXMTd7PtA+oNbw5S2OZYugciFcJvR/mfAs1vZSMAJtkwrOQmojMTER+VhvIZe0tXXX5CWwdRftUwM9iVBWlhBYgJOqR8ur9AImrq6cod+yuRfOpk+qRn7nRrQe1e0No= Received: from AM0PR05MB4435.eurprd05.prod.outlook.com (52.134.92.20) by AM0PR05MB6228.eurprd05.prod.outlook.com (20.178.115.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1471.20; Thu, 27 Dec 2018 22:20:17 +0000 Received: from AM0PR05MB4435.eurprd05.prod.outlook.com ([fe80::c860:9e3d:3158:8ea]) by AM0PR05MB4435.eurprd05.prod.outlook.com ([fe80::c860:9e3d:3158:8ea%4]) with mapi id 15.20.1471.019; Thu, 27 Dec 2018 22:20:17 +0000 From: Mordechay Haimovsky <motih@mellanox.com> To: "dev@dpdk.org" <dev@dpdk.org> CC: Mordechay Haimovsky <motih@mellanox.com>, "stable@dpdk.org" <stable@dpdk.org> Thread-Topic: [PATCH v2 1/3] net/mlx5: fix shared counter allocation logic Thread-Index: AQHUnjJY/8Is/h3JnU+4pg16Vf6uow== Date: Thu, 27 Dec 2018 22:20:17 +0000 Message-ID: <1545949196-3355-2-git-send-email-motih@mellanox.com> References: <1545748697-3385-4-git-send-email-motih@mellanox.com> In-Reply-To: <1545748697-3385-4-git-send-email-motih@mellanox.com> Accept-Language: he-IL, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: CWLP123CA0024.GBRP123.PROD.OUTLOOK.COM (2603:10a6:401:56::36) To AM0PR05MB4435.eurprd05.prod.outlook.com (2603:10a6:208:5a::20) authentication-results: spf=none (sender IP is ) smtp.mailfrom=motih@mellanox.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [37.142.13.130] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; AM0PR05MB6228; 6:YsohoI5JXtd+pzTAdCySFfNKp/qxJ0E/f15QALAcarSXJRWtVZywaXhZUg0zJIpcowW1LvRKzCThsRKAafiFrrHFvOzM7IkT6gQgOawKi4e1OVu2L1vuX56HhL/Ol/AV7WNq6m+J6xJ3GYIASI2CVz3M4dhofLbLzjaZRNOPXLY/6eVVu2A+MK+IT1Vx/zpaFMleFxjT86+62DwN6PQlvTvswQ9C1Ddsv28VLmOr1FzW3Tf2KjIh4g5zgM0vUltAssEpSszBMa5iZmVe/0GqUCpnkvq02zkA+4iEqF03ljGNmyWGX0WRdnrF3v/yYeN6+3dYIw07qryFEX+b3uTtVfspt3gXLkHmRCQq5yvcoPBIETBckS/G31Js3IsOoNA+GZETZldjxstfmUN33hE7NBOuTJ/+YoTSBOb/SEeBYs3jY8OgDyCgwOU+6w+mQO5azWEeG11iWutSGKdehhMr9g==; 5:HGEx4Th+8ateoEkbdXwIAMWydlCYpPKGe2+cvMDBvWdLe1fXIrmauig7bB7UqHwrbE6VwUvq6mW8sMb/5/OEp6SzOSS5Zr2d4EdGUQw/DVirIR3QEcnUC8+yF4jjUimYzA32+DLVkuZSoUemDjXme96VrL3rXzQRlwMrY669eco=; 7:tIaKhfhwgUd2lAuwPBa1UrjxaG+maNg36iVo9SWDQhLhd99S8ea20LHIqBUntjddGF/YHk5MhY0U4eqWNjMqhsenJmle9LcYydgmr3jhGVlhvKOnQRMskLfmbnbOBCDpmclikrwIZiGT1i7K4puLow== x-ms-office365-filtering-correlation-id: 7d4cbf60-b9bb-4ffd-64a7-08d66c497b26 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600074)(711020)(4618075)(2017052603328)(7153060)(7193020); SRVR:AM0PR05MB6228; x-ms-traffictypediagnostic: AM0PR05MB6228: x-microsoft-antispam-prvs: <AM0PR05MB622889AA3C27574F0034F31AD2B60@AM0PR05MB6228.eurprd05.prod.outlook.com> x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(3230021)(908002)(999002)(5005026)(6040522)(2401047)(8121501046)(3002001)(3231475)(944501520)(52105112)(93006095)(93001095)(10201501046)(6055026)(6041310)(20161123560045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123562045)(201708071742011)(7699051)(76991095); SRVR:AM0PR05MB6228; BCL:0; PCL:0; RULEID:; SRVR:AM0PR05MB6228; x-forefront-prvs: 0899B47777 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(39860400002)(376002)(346002)(366004)(396003)(136003)(189003)(199004)(2501003)(6512007)(2906002)(71200400001)(2351001)(2616005)(6916009)(6506007)(386003)(102836004)(3846002)(1730700003)(6486002)(71190400001)(86362001)(5660300001)(68736007)(14454004)(6436002)(106356001)(476003)(5640700003)(11346002)(105586002)(6116002)(66066001)(8936002)(486006)(4326008)(81166006)(81156014)(256004)(450100002)(52116002)(76176011)(316002)(25786009)(36756003)(8676002)(97736004)(186003)(26005)(305945005)(446003)(54906003)(478600001)(7736002)(99286004)(53936002); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR05MB6228; H:AM0PR05MB4435.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: icI9XkNbNrZqVV15phQcoGsnRjNm7TTYAXIEN8GTVeetwrtEPWyscMqjiLI1WXSe73vkqMQHqtZrlyhAMD+nLDkcf804gznrQHJ9O5SovvNb9xoOPk9GcVrIj4TW2P/ALZfOABHq25jjpBPre1BLPd74TniT7DUFPZL3ClEFtF/CzJjtt0n6fykwIw8gwaRLwFIxpoUcSS01+3g0qDQyWJ1XFbpJMHs7HVT6ZFRkWcnyGWyBFSrwhWEXRbkR1ri44QMp7zo85Ue9z8leoerAo0GRJjdU2z1Eu+bifLo0WqetTcxYyJtH/Zn1r2xHP+3P spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7d4cbf60-b9bb-4ffd-64a7-08d66c497b26 X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Dec 2018 22:20:17.6731 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR05MB6228 Subject: [dpdk-dev] [PATCH v2 1/3] net/mlx5: fix shared counter allocation logic X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 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> |
Series |
support flow counters using devx
|
|
Checks
Context | Check | Description |
---|---|---|
ci/Intel-compilation | success | Compilation OK |
Commit Message
Moti Haimovsky
Dec. 27, 2018, 10:20 p.m. UTC
This commit fixes the logic for searching and allocating a shared
counter in mlx5_flow_verbs.
Now only the shared counters in the counters list are checked for
a match and not all the counters as before.
Fixes: 84c406e74524 ("net/mlx5: add flow translate function")
Cc: stable@dpdk.org
Signed-off-by: Moti Haimovsky <motih@mellanox.com>
---
v2:
* Modified commit header
---
drivers/net/mlx5/mlx5_flow_verbs.c | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
Comments
Moti, don't you forget to update flow_verbs_counter_release() ? Only shared counters should be removed from the list. WBR, Slava > -----Original Message----- > From: dev <dev-bounces@dpdk.org> On Behalf Of Mordechay Haimovsky > Sent: Friday, December 28, 2018 0:20 > To: dev@dpdk.org > Cc: Mordechay Haimovsky <motih@mellanox.com>; stable@dpdk.org > Subject: [dpdk-dev] [PATCH v2 1/3] net/mlx5: fix shared counter allocation > logic > > This commit fixes the logic for searching and allocating a shared counter in > mlx5_flow_verbs. > Now only the shared counters in the counters list are checked for a match > and not all the counters as before. > > Fixes: 84c406e74524 ("net/mlx5: add flow translate function") > Cc: stable@dpdk.org > > Signed-off-by: Moti Haimovsky <motih@mellanox.com> > --- > v2: > * Modified commit header > --- > drivers/net/mlx5/mlx5_flow_verbs.c | 14 +++++++------- > 1 file changed, 7 insertions(+), 7 deletions(-) > > diff --git a/drivers/net/mlx5/mlx5_flow_verbs.c > b/drivers/net/mlx5/mlx5_flow_verbs.c > index 81ec59d..409e1cd 100644 > --- a/drivers/net/mlx5/mlx5_flow_verbs.c > +++ b/drivers/net/mlx5/mlx5_flow_verbs.c > @@ -121,13 +121,13 @@ > struct mlx5_flow_counter *cnt; > int ret; > > - LIST_FOREACH(cnt, &priv->flow_counters, next) { > - if (!cnt->shared || cnt->shared != shared) > - continue; > - if (cnt->id != id) > - continue; > - cnt->ref_cnt++; > - return cnt; > + if (shared) { > + LIST_FOREACH(cnt, &priv->flow_counters, next) { > + if (cnt->shared && cnt->id == id) { > + cnt->ref_cnt++; > + return cnt; > + } > + } > } > cnt = rte_calloc(__func__, 1, sizeof(*cnt), 0); > if (!cnt) { > -- > 1.8.3.1
Saturday, December 29, 2018 10:13 PM, Slava Ovsiienko: > Subject: Re: [dpdk-dev] [PATCH v2 1/3] net/mlx5: fix shared counter allocation > logic > > Moti, don't you forget to update flow_verbs_counter_release() ? > Only shared counters should be removed from the list. +1, thanks slava. Moti, I have no more comments on this series. Please fix above and send the next series w/ my Ack. > > WBR, > Slava > > > -----Original Message----- > > From: dev <dev-bounces@dpdk.org> On Behalf Of Mordechay Haimovsky > > Sent: Friday, December 28, 2018 0:20 > > To: dev@dpdk.org > > Cc: Mordechay Haimovsky <motih@mellanox.com>; stable@dpdk.org > > Subject: [dpdk-dev] [PATCH v2 1/3] net/mlx5: fix shared counter > > allocation logic > > > > This commit fixes the logic for searching and allocating a shared > > counter in mlx5_flow_verbs. > > Now only the shared counters in the counters list are checked for a > > match and not all the counters as before. > > > > Fixes: 84c406e74524 ("net/mlx5: add flow translate function") > > Cc: stable@dpdk.org > > > > Signed-off-by: Moti Haimovsky <motih@mellanox.com> > > --- > > v2: > > * Modified commit header > > --- > > drivers/net/mlx5/mlx5_flow_verbs.c | 14 +++++++------- > > 1 file changed, 7 insertions(+), 7 deletions(-) > > > > diff --git a/drivers/net/mlx5/mlx5_flow_verbs.c > > b/drivers/net/mlx5/mlx5_flow_verbs.c > > index 81ec59d..409e1cd 100644 > > --- a/drivers/net/mlx5/mlx5_flow_verbs.c > > +++ b/drivers/net/mlx5/mlx5_flow_verbs.c > > @@ -121,13 +121,13 @@ > > struct mlx5_flow_counter *cnt; > > int ret; > > > > - LIST_FOREACH(cnt, &priv->flow_counters, next) { > > - if (!cnt->shared || cnt->shared != shared) > > - continue; > > - if (cnt->id != id) > > - continue; > > - cnt->ref_cnt++; > > - return cnt; > > + if (shared) { > > + LIST_FOREACH(cnt, &priv->flow_counters, next) { > > + if (cnt->shared && cnt->id == id) { > > + cnt->ref_cnt++; > > + return cnt; > > + } > > + } > > } > > cnt = rte_calloc(__func__, 1, sizeof(*cnt), 0); > > if (!cnt) { > > -- > > 1.8.3.1
Hi, Every counter that is created (shared or not) is added to the counters list Therefore every counter destined for removal (i.e. ref_count == 0) should also be Removed from this list. What am I missing ? Moti > -----Original Message----- > From: Slava Ovsiienko > Sent: Saturday, December 29, 2018 10:13 PM > To: Mordechay Haimovsky <motih@mellanox.com>; dev@dpdk.org > Cc: Mordechay Haimovsky <motih@mellanox.com>; stable@dpdk.org > Subject: RE: [dpdk-dev] [PATCH v2 1/3] net/mlx5: fix shared counter > allocation logic > > Moti, don't you forget to update flow_verbs_counter_release() ? > Only shared counters should be removed from the list. > > WBR, > Slava > > > -----Original Message----- > > From: dev <dev-bounces@dpdk.org> On Behalf Of Mordechay Haimovsky > > Sent: Friday, December 28, 2018 0:20 > > To: dev@dpdk.org > > Cc: Mordechay Haimovsky <motih@mellanox.com>; stable@dpdk.org > > Subject: [dpdk-dev] [PATCH v2 1/3] net/mlx5: fix shared counter > > allocation logic > > > > This commit fixes the logic for searching and allocating a shared > > counter in mlx5_flow_verbs. > > Now only the shared counters in the counters list are checked for a > > match and not all the counters as before. > > > > Fixes: 84c406e74524 ("net/mlx5: add flow translate function") > > Cc: stable@dpdk.org > > > > Signed-off-by: Moti Haimovsky <motih@mellanox.com> > > --- > > v2: > > * Modified commit header > > --- > > drivers/net/mlx5/mlx5_flow_verbs.c | 14 +++++++------- > > 1 file changed, 7 insertions(+), 7 deletions(-) > > > > diff --git a/drivers/net/mlx5/mlx5_flow_verbs.c > > b/drivers/net/mlx5/mlx5_flow_verbs.c > > index 81ec59d..409e1cd 100644 > > --- a/drivers/net/mlx5/mlx5_flow_verbs.c > > +++ b/drivers/net/mlx5/mlx5_flow_verbs.c > > @@ -121,13 +121,13 @@ > > struct mlx5_flow_counter *cnt; > > int ret; > > > > - LIST_FOREACH(cnt, &priv->flow_counters, next) { > > - if (!cnt->shared || cnt->shared != shared) > > - continue; > > - if (cnt->id != id) > > - continue; > > - cnt->ref_cnt++; > > - return cnt; > > + if (shared) { > > + LIST_FOREACH(cnt, &priv->flow_counters, next) { > > + if (cnt->shared && cnt->id == id) { > > + cnt->ref_cnt++; > > + return cnt; > > + } > > + } > > } > > cnt = rte_calloc(__func__, 1, sizeof(*cnt), 0); > > if (!cnt) { > > -- > > 1.8.3.1
diff --git a/drivers/net/mlx5/mlx5_flow_verbs.c b/drivers/net/mlx5/mlx5_flow_verbs.c index 81ec59d..409e1cd 100644 --- a/drivers/net/mlx5/mlx5_flow_verbs.c +++ b/drivers/net/mlx5/mlx5_flow_verbs.c @@ -121,13 +121,13 @@ struct mlx5_flow_counter *cnt; int ret; - LIST_FOREACH(cnt, &priv->flow_counters, next) { - if (!cnt->shared || cnt->shared != shared) - continue; - if (cnt->id != id) - continue; - cnt->ref_cnt++; - return cnt; + if (shared) { + LIST_FOREACH(cnt, &priv->flow_counters, next) { + if (cnt->shared && cnt->id == id) { + cnt->ref_cnt++; + return cnt; + } + } } cnt = rte_calloc(__func__, 1, sizeof(*cnt), 0); if (!cnt) {