From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 38385A04BB; Fri, 25 Sep 2020 01:20:21 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 966DB1DFF1; Fri, 25 Sep 2020 01:20:20 +0200 (CEST) Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id 2D9C51DEE8 for ; Fri, 25 Sep 2020 01:20:18 +0200 (CEST) IronPort-SDR: A/SC+KIQtCrv5uNJBLtNiNYP5VBflR2tt683aX1/ePq8VJfqvu1ZbNjLKo6xHNipWLjC4u+JwK Sq/pDKF7ZiqQ== X-IronPort-AV: E=McAfee;i="6000,8403,9754"; a="149034361" X-IronPort-AV: E=Sophos;i="5.77,299,1596524400"; d="scan'208";a="149034361" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 24 Sep 2020 16:20:17 -0700 IronPort-SDR: haJBz8vIgwGxB4XhOyPl5+oXukXBPAS8aF+IHinIHyFTWdnwyxup9vLi1SMjmHc/xNCyf5t7JW VKDOiMQrp7GA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,299,1596524400"; d="scan'208";a="336226390" Received: from fmsmsx604.amr.corp.intel.com ([10.18.126.84]) by fmsmga004.fm.intel.com with ESMTP; 24 Sep 2020 16:20:16 -0700 Received: from fmsmsx603.amr.corp.intel.com (10.18.126.83) by fmsmsx604.amr.corp.intel.com (10.18.126.84) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Thu, 24 Sep 2020 16:20:16 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5 via Frontend Transport; Thu, 24 Sep 2020 16:20:16 -0700 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.174) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.1713.5; Thu, 24 Sep 2020 16:20:15 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KNoJVMUzTeg3BroQ7Fg0xb4lLFbzGGpjQObtw2eDXtlSz1AyLrLG0AB3HJog92jr6/aVltBxM6GmxB5YV49KTJYctLNVUHKEpE+9qj/NVwSBQhsLx/fHg3jB1QqMCutcJQUjaCGdm1laCEgGIwzO4IEelum4C1QKOESs45SPunU9V7mQxb/kgMvTZJSwZbSZ7khpfmnesxWFOEKNP/0v9EaNMKK0xkulVCfBib06q+242LfYADVztjVfQWl2q2AkN1vcxAclUz7jeSyze4fEN4WA0L5C2NqyDSw280LAci4KvK9JlA3yNNYPJtA3setBINK5xzG+mVYUgQDH9xXWgw== 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=JZefwkz/r3aLIpLkXisRyW85CiUW3vD/Gn9OuRRv9J8=; b=XRD7zNqJbHW6hQX93Dq6ex9HSqNaBbRUFX5aRuDj9s7IdmD81K6/o31UEUYw0QBSK8SY75RPhgzAhqo6BjceTOyU4YA1oh1GaAyGfIZUGxnOv3+35SgOA3aAxbXrQAnzk+f9v3EpXsnEO/M8/wuHovBPyIvcha3ODZaDOur0ORjqdi3/rHlaaNI97d94Eua6O/YH0unbAYmFuPr5BqaJ+KOWRu5GYoTncRxwWCHmA7ApQWwjmrZR7q5EvsVtdtZO/JmpsivJoTL12LXfolIYgrJQpyQVqYOrB6L0eyMPB0tydx0KMNRw38UMK7mVy0P1/8stJ2zsCBwSFvp3+v3z9A== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=JZefwkz/r3aLIpLkXisRyW85CiUW3vD/Gn9OuRRv9J8=; b=XoSV9z6GblG3DDx3NxOt1eo6st5aUVe83uqraM4DMdkOQSYQJhTIl8BnjxnAi73LcGj143Fa3Y7lqHSlPdJ9BqwqVWiO73Gnft/+Z1uy75/kdfg5h67ybFzg7CiRMvgAldE5HIDJgXFLrgcSPn6jFY2PYDGu2jjFsYq6LbfA8wM= Received: from BY5PR11MB4451.namprd11.prod.outlook.com (2603:10b6:a03:1cb::30) by BYAPR11MB2773.namprd11.prod.outlook.com (2603:10b6:a02:c6::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3391.15; Thu, 24 Sep 2020 23:20:12 +0000 Received: from BY5PR11MB4451.namprd11.prod.outlook.com ([fe80::4162:97e1:7d04:a508]) by BY5PR11MB4451.namprd11.prod.outlook.com ([fe80::4162:97e1:7d04:a508%7]) with mapi id 15.20.3391.027; Thu, 24 Sep 2020 23:20:12 +0000 From: "Chautru, Nicolas" To: Honnappa Nagarahalli , Phil Yang , "dev@dpdk.org" , "david.marchand@redhat.com" , "Hunt, David" CC: Ruifeng Wang , nd , nd Thread-Topic: [PATCH v3 2/4] bbdev: use C11 atomic builtins for device processing counter Thread-Index: AQHWkjUuj1rN4CLbJEaGEXaS2pDbu6l4VxjwgAAJsvCAAAS3IA== Date: Thu, 24 Sep 2020 23:20:12 +0000 Message-ID: References: <1600244628-13062-1-git-send-email-phil.yang@arm.com> <1600925968-18278-1-git-send-email-phil.yang@arm.com> <1600925968-18278-3-git-send-email-phil.yang@arm.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.5.1.3 authentication-results: arm.com; dkim=none (message not signed) header.d=none;arm.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [45.28.143.88] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: b8091483-d799-4c03-f3c4-08d860e062eb x-ms-traffictypediagnostic: BYAPR11MB2773: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 9pcc8m3XyKQPiTecjHB1SJG3I1LhD59hiQUHk4YO0vvVXokKkcu9td8vKH5fLZ3pqCKc2jz290Hu3wnR/zkix23dJ11i6Lf6yHB99hcclUWT5Nh4B6T7UEsm/EEPs+tkAglg1+FvqRAQTtR09aiE+DWx03D9DwIhzje98/vYG05HavqLoaoroHo4lCyQZfCsF/iLxroWBOwq1SwZ2K0tpMIxYzP8gIi/KkWmmg0gKp5vecRs/FNLT6Jk6rFefbQrKmANzzbjBXoCMAT7qR0YSg+mydIzXVAKRQOmB1+syLh8TGiPaC/AVddGxe63BK5apWCnEGkdNy6F4pgHIDkvWUooBoBknPesVRe713l5WuK7O6CRsYBt8EeDMsxl75Ha/bQEgWUzNgAuJFkJQCLiTQ== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BY5PR11MB4451.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(376002)(346002)(396003)(366004)(136003)(39860400002)(6636002)(26005)(110136005)(76116006)(66446008)(86362001)(52536014)(186003)(64756008)(6506007)(2906002)(316002)(54906003)(478600001)(8936002)(8676002)(53546011)(7696005)(4326008)(83380400001)(66946007)(71200400001)(66476007)(66556008)(55016002)(66574015)(5660300002)(33656002)(966005)(9686003); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: atTQtm04ooYwLtlJcp/NDDz/Aady/aBQNXnJlYVlN80JDj6WFEJR8jR5nSDUoPyz14ukfEfqhLjXxAm0dzK5r1a4XLxsmfDXE3d0l41K4q78w8PgFcm4JWOPi1hl8O0MYytwQzlV24iV0182s29eAAnIPrKWdTdmyQh7JBHVgH1nwc9+xbzg7D5P6EG1lmSjg/CNK8ybyN1xNVTXiZVxA6d3pH6U9tiKto4j0WIgZl7+M24MohlbGaDpYPxhqm1r/xV9FLTV3H3kp2HaR6b0gSObbTk5EbaWwhbW1adenajn633q6sEJyS4JzRgy6iVDERIlkPssFLnCVWzHgyUlY+COskvLqKAqDwlHQC26fGDtB54pBUG29HHr1XrKV0KxsjOf4wL52Gx82LSM9GiBguGU8lD/yhJYomsZV0V3f8+SydYMMcAg2gYrTtx3OTaj4TPwoz6tQs9GwfVbDY/TxiBefZxldDZXzd3lwWu/AYtEziMFXW3OYHJ3ujmTx5wgJCPizfsU2dtecaYD0s4LE9Rm0S19cELMuz7hBbylk2OqCelmSS9Zwu5kNH2G6Ms0V0QtVsZbt/Nqm/bVzbt2ED8CxTSLsGeCsiia2VNMh0KEjPr5uZhqpRVRa52Kk+4bNlRdlLfzk8O4RMngC0kcmw== Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BY5PR11MB4451.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: b8091483-d799-4c03-f3c4-08d860e062eb X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Sep 2020 23:20:12.0367 (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: T9FaPehMyDLlyW3HXcULMDBIylZzgDcYaxtJsO2JlTXvzZImdzsaPvnWkz2FJYMz77FWigeTjwWmSpUElrn3KARy4kC2G5ALN6MiIl5QZZc= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR11MB2773 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH v3 2/4] bbdev: use C11 atomic builtins for device processing counter 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" Thanks Honnappa,=20 Acked-By: Nicolas Chautru > -----Original Message----- > From: Honnappa Nagarahalli > Sent: Thursday, September 24, 2020 3:45 PM > To: Chautru, Nicolas ; Phil Yang > ; dev@dpdk.org; david.marchand@redhat.com; Hunt, > David > Cc: Ruifeng Wang ; nd ; > Honnappa Nagarahalli ; nd > > Subject: RE: [PATCH v3 2/4] bbdev: use C11 atomic builtins for device > processing counter >=20 > >=20 > > > > Hi Phil, > > Na=EFve question but the deprecation document was stating that "DPDK > > will adopt C11 atomic operations semantics and provide wrappers using > > C11 atomic built-ins." > At the time of writing the deprecation notice, that was the thinking. > However, through further discussions [1] in the community, it was decided > to use atomic built-ins. >=20 > [1] http://mails.dpdk.org/archives/dev/2020-May/167416.html >=20 > > Here you are using directly the C11 atomic built-ins and not providing > > and using a DPDK wrapper. > > Wasn't the intent to have a new rte_... wrapper here? Ie. the same way > > as the __sync_fetch_and_add() were called before behind the > > rte_atomicNN_XX wrapper. > > > > Thanks > > Nic > > > > > > > -----Original Message----- > > > From: Phil Yang > > > Sent: Wednesday, September 23, 2020 10:39 PM > > > To: dev@dpdk.org; david.marchand@redhat.com; Chautru, Nicolas > > > ; Hunt, David > > > Cc: Ruifeng.Wang@arm.com; Honnappa.Nagarahalli@arm.com; > > nd@arm.com > > > Subject: [PATCH v3 2/4] bbdev: use C11 atomic builtins for device > > > processing counter > > > > > > Since rte_atomicXX APIs are not allowed to be used, use C11 atomic > > > builtins for device processing counter. > > > > > > Signed-off-by: Phil Yang > > > Reviewed-by: Ruifeng Wang > > > Reviewed-by: Honnappa Nagarahalli > > > --- > > > lib/librte_bbdev/rte_bbdev.c | 5 +++-- > > > lib/librte_bbdev/rte_bbdev.h > > > | 4 +--- > > > 2 files changed, 4 insertions(+), 5 deletions(-) > > > > > > diff --git a/lib/librte_bbdev/rte_bbdev.c > > > b/lib/librte_bbdev/rte_bbdev.c index a4fdb69..5ba891c 100644 > > > --- a/lib/librte_bbdev/rte_bbdev.c > > > +++ b/lib/librte_bbdev/rte_bbdev.c > > > @@ -210,7 +210,7 @@ rte_bbdev_allocate(const char *name) > > > return NULL; > > > } > > > > > > - rte_atomic16_inc(&bbdev->data->process_cnt); > > > + __atomic_add_fetch(&bbdev->data->process_cnt, 1, > > > __ATOMIC_RELAXED); > > > bbdev->data->dev_id =3D dev_id; > > > bbdev->state =3D RTE_BBDEV_INITIALIZED; > > > > > > @@ -252,7 +252,8 @@ rte_bbdev_release(struct rte_bbdev *bbdev) > > > } > > > > > > /* clear shared BBDev Data if no process is using the device > > > anymore */ > > > - if (rte_atomic16_dec_and_test(&bbdev->data->process_cnt)) > > > + if (__atomic_sub_fetch(&bbdev->data->process_cnt, 1, > > > + __ATOMIC_RELAXED) =3D=3D 0) > > > memset(bbdev->data, 0, sizeof(*bbdev->data)); > > > > > > memset(bbdev, 0, sizeof(*bbdev)); > > > diff --git a/lib/librte_bbdev/rte_bbdev.h > > > b/lib/librte_bbdev/rte_bbdev.h index 5729137..7017124 100644 > > > --- a/lib/librte_bbdev/rte_bbdev.h > > > +++ b/lib/librte_bbdev/rte_bbdev.h > > > @@ -33,7 +33,6 @@ extern "C" { > > > #include > > > > > > #include > > > -#include > > > #include > > > #include > > > #include > > > @@ -426,8 +425,7 @@ struct rte_bbdev_data { > > > uint16_t dev_id; /**< Device ID */ > > > int socket_id; /**< NUMA socket that device is on */ > > > bool started; /**< Device run-time state */ > > > - /** Counter of processes using the device */ > > > - rte_atomic16_t process_cnt; > > > + uint16_t process_cnt; /** Counter of processes using the device > > > +*/ > > > }; > > > > > > /* Forward declarations */ > > > -- > > > 2.7.4