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 EF596A04A2; Tue, 12 May 2020 08:18:54 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 2E87A1C066; Tue, 12 May 2020 08:18:54 +0200 (CEST) Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-eopbgr80048.outbound.protection.outlook.com [40.107.8.48]) by dpdk.org (Postfix) with ESMTP id 799011C031 for ; Tue, 12 May 2020 08:18:53 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=sG5cYvSDEtUtZTECB6Y4Nw+4I45vpP1Yq9Yp4WNl38g=; b=IT4bu5AFGwC/Cwp4N5X/o1qAAlGFIVsxDQcnKdTAQXqxSGstS8XQuhqJAuJ+6qS8uSMn39cUsvb59fDUjpjuqjIY4+HowUMYWeFj5Zvr/XrCmsKETgvlDPUMjcvcnlNCKfbXveK1+FHWSfoibhAdQHYoKUIIl5aCL3jCAjK6tCE= Received: from AM6PR04CA0006.eurprd04.prod.outlook.com (2603:10a6:20b:92::19) by VI1PR0802MB2509.eurprd08.prod.outlook.com (2603:10a6:800:b7::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2979.26; Tue, 12 May 2020 06:18:51 +0000 Received: from AM5EUR03FT048.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:92:cafe::d) by AM6PR04CA0006.outlook.office365.com (2603:10a6:20b:92::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2979.26 via Frontend Transport; Tue, 12 May 2020 06:18:51 +0000 Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dpdk.org; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dpdk.org; dmarc=bestguesspass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM5EUR03FT048.mail.protection.outlook.com (10.152.17.177) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2979.27 via Frontend Transport; Tue, 12 May 2020 06:18:51 +0000 Received: ("Tessian outbound e88319d7ccd0:v54"); Tue, 12 May 2020 06:18:51 +0000 X-CR-MTA-TID: 64aa7808 Received: from 2c734f4c7785.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 025FDEA4-42E0-4B0C-B497-D878EABD7EBF.1; Tue, 12 May 2020 06:18:46 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 2c734f4c7785.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 12 May 2020 06:18:46 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=a66sUztmsXdXwR+XlfaEchQJSjUps/XZ+DPs8NEl8uAzGyguFr5vgAYVh7KcRqQG/EXzyZ6qkXpRHOjgoNLvyO8sapAPKhHe1w5Kl6gsnSFjVK0twGiv3rajMYGgfKOrWBX/UOSpj6sPUxRoG2Mvow+bMOtHNDIr2Id5U6n9Q9cqQnC8264gh6lRRxoLblzPiolt0/YO8MW8C1OhjxKaoUWak1em+gjGS/r5Z/r/g/61cbubWEJvY0wLO9QFq3HxbX/Ub6VIC4D7H/fTa0fYj4oxb8q/G7m6VqxeRcUqXkhW3Ru63Qx2762l0y6H1NmJwGqbpVCsfNZMNSEocycsRQ== 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=sG5cYvSDEtUtZTECB6Y4Nw+4I45vpP1Yq9Yp4WNl38g=; b=HUTSMvtiANRFKY0qW49pySBumUE2yKigNhWq4UkEyPDs26AnHjpJY1WJFAIDjfYGhY72i2oK0+X8xRxGZtfgsOR5nVhVTR0hKWy8TVlUlWZm6AuwHz3rXUk/DqsmXj0WwWLeECqvr73BLZX5FJqpldhvvcs14ZAUYlvTVzF5arrOsspIGTo6DwDIQqsWyGof2tdbbzwFYdpt5zUJrtP27dtcV7x4u8IzI8MZFjDTXJ230sjC8vtiKOKONVmy8PXr1nsPw3v47eZNcCWHKHz5HzAxmzZ43wTVbiXshHwy0fZFRcrvh5QOq1eUngUp24XXkQonFBhYSYPerYUEnPzjDg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=sG5cYvSDEtUtZTECB6Y4Nw+4I45vpP1Yq9Yp4WNl38g=; b=IT4bu5AFGwC/Cwp4N5X/o1qAAlGFIVsxDQcnKdTAQXqxSGstS8XQuhqJAuJ+6qS8uSMn39cUsvb59fDUjpjuqjIY4+HowUMYWeFj5Zvr/XrCmsKETgvlDPUMjcvcnlNCKfbXveK1+FHWSfoibhAdQHYoKUIIl5aCL3jCAjK6tCE= Received: from HE1PR0801MB2025.eurprd08.prod.outlook.com (2603:10a6:3:50::14) by HE1PR0801MB2090.eurprd08.prod.outlook.com (2603:10a6:3:4c::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2979.34; Tue, 12 May 2020 06:18:43 +0000 Received: from HE1PR0801MB2025.eurprd08.prod.outlook.com ([fe80::646e:c258:7269:f4b2]) by HE1PR0801MB2025.eurprd08.prod.outlook.com ([fe80::646e:c258:7269:f4b2%11]) with mapi id 15.20.2979.033; Tue, 12 May 2020 06:18:43 +0000 From: Ruifeng Wang To: Honnappa Nagarahalli , "dev@dpdk.org" , "jerinj@marvell.com" , "hemant.agrawal@nxp.com" , "Ajit Khaparde (ajit.khaparde@broadcom.com)" , "igorch@amazon.com" , "thomas@monjalon.net" , "viacheslavo@mellanox.com" , "arybchenko@solarflare.com" , Honnappa Nagarahalli CC: nd , nd Thread-Topic: [RFC] eal: adjust barriers for IO on Armv8-a Thread-Index: AQHWJ779JPuQ31j/5EWZd7D3sEB7waij+FdQ Date: Tue, 12 May 2020 06:18:43 +0000 Message-ID: References: <20200410164127.54229-1-gavin.hu@arm.com> <20200511180637.22200-1-honnappa.nagarahalli@arm.com> In-Reply-To: <20200511180637.22200-1-honnappa.nagarahalli@arm.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: b93d60c5-f800-4623-a8e3-bba2d9a2106a.0 x-checkrecipientchecked: true Authentication-Results-Original: arm.com; dkim=none (message not signed) header.d=none;arm.com; dmarc=none action=none header.from=arm.com; x-originating-ip: [113.29.88.7] x-ms-publictraffictype: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: e0ee29d5-e0dd-4839-2bab-08d7f63c56e3 x-ms-traffictypediagnostic: HE1PR0801MB2090:|HE1PR0801MB2090:|VI1PR0802MB2509: x-ld-processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr x-ms-exchange-transport-forked: True X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true nodisclaimer: true x-ms-oob-tlc-oobclassifiers: OLM:255;OLM:255; x-forefront-prvs: 0401647B7F X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: otCeyXK2QcWgp8wkkF5whlf1NSOnCUSU9efQYrNtR/lUBUHkmmZ7Xvnrinc12aG6GwMqwmRHJ7JCcGrUyN6EtBm4y25b1nm95P8XGcFzG5hW0WugyoKrIpMn9qo1sMLdI/px+d5fXsKl1iJsEIPJSkjF2fJrFyvbJmaKXd8V1JUvqSG8HB9w9nkx0oz3SwCTDNUd2Eh/mST8+w5UZrxbHkAfpRelnYmBWXKqnZxbSW1opBwSRH/BNj1MVFp2eZgUFxBbbeHON708UJ3BFn7cB2agMyWndU/vcrg0hRqsFH6eVgB7tto41VkwCRv4EMUGNRM62q+/n6PQWYEWWabmI5OVqf0D3BNCm+eirmYqeaSiZqz4pO2zujX1P54TzrXkC3WX5tq1ZTUe1Hq4Q4TYT/KwkWCMsvYChz5slQTaHrY1izzQx0XzZRQPLkGgyWrzXM1XMgEPGiG+mawtZwcCWo3lM4nXMfgxwAm+wpQjJhbeBtz4I0RklBgZZba+Vji9IM1BuSQBjOlKTYT1ATFD5mtmVDSuPKMfFfDyJLELsFEfVS88xfe4sFwItArvy+Elx5bKstUFx5QbSoGfyUFTJ6Q0cNdMsjTCvylDuYNMW4izRUweiHqaJwwyb3Qe8qrr X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:HE1PR0801MB2025.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(4636009)(346002)(39860400002)(376002)(366004)(396003)(136003)(33430700001)(53546011)(4326008)(316002)(55016002)(33440700001)(966005)(52536014)(33656002)(7696005)(9686003)(76116006)(66476007)(8676002)(66556008)(8936002)(64756008)(6506007)(86362001)(186003)(26005)(55236004)(6636002)(71200400001)(54906003)(110136005)(478600001)(66446008)(66946007)(5660300002)(2906002)(921003); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: GlsswfWMGykPA0J0i6ZsQxI9hB4atCQNlIZkPoqTnCUf8xdhuavMJn8Q3zHypkiWHGepgKqjWrULvaO9GlGGa9okoVYmP/SBfaAFginaOShtptQEN1NjT+3+0gqmBD9vd3mdmXjhAPci+p7BnaTHC3t5o7RelokmRS3PIZR28B8Ofq6qu7o9eBGFSdmPbkoyJzUL4Rac6Tc8lpnclrRptKwT1txLR0P8yuQUuKk+J7m14x517i3TJqM9kbyCwAVO+JAIyqW9Xw0D4ohF4NG+PMMyQ7u4vON4ZO++Gq6lmoqWADTRiV1Dn51n9W1gaR5q89mU0JKw2nTHVYbIJMTTfsHQbmvhW1WI1ThfN8wy5zFWopRr4VQnUyZ+PdX5NimWOiFxBlQ5NcXplQrx17NZAWKgdRaeOzOAv+YKpPpdHtDhOlFUB/oMIwgkszobivGodrqWFt1MiGZYNMRDfMBP3j7D297iu6nJEZEA/A9DF1Q= Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0801MB2090 Original-Authentication-Results: arm.com; dkim=none (message not signed) header.d=none;arm.com; dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM5EUR03FT048.eop-EUR03.prod.protection.outlook.com X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFTY:; SFS:(4636009)(136003)(396003)(39860400002)(346002)(376002)(46966005)(33430700001)(8676002)(70586007)(70206006)(33440700001)(82310400002)(8936002)(6636002)(26005)(4326008)(356005)(5660300002)(86362001)(186003)(9686003)(110136005)(54906003)(478600001)(316002)(2906002)(36906005)(33656002)(55016002)(81166007)(53546011)(82740400003)(966005)(7696005)(52536014)(6506007)(336012)(47076004)(921003); DIR:OUT; SFP:1101; X-MS-Office365-Filtering-Correlation-Id-Prvs: 367da16e-f645-4d10-2b56-08d7f63c521a X-Forefront-PRVS: 0401647B7F X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: GY1Q4TK47w6ygy8N5rY6jJjnihMsUMuq+2zOF4Y7DZG/6Es9m234ObJD05Gmu2dMcqu96Xe3G8AdcOqM2ScwLCW3oPCvJpjNLjnaep/+Bhua2b+3p6QEulxoEqK5ns3TMS6UJpikkgrD36Tkg0V2aZWuxKPb62AwawJ3RUmK1oVZZeG1zmlPZ738K5dFPT34SbkXvOAiqknI7ac3kOlfffigxPXMTu69xtcQAazLc1448a6QBso922kYUU8c9YFG8u1mWE9IGlRu7Ep8Kqkb89JkwgeXcOzvYMmHete+TUBLKsrSpHX018D7juI2DL6z01w9PdJ/vNHITxkT85ouH4zFrx8GMpXXcQRuSJpr3fqkCTAarRsPKO+V3NnkHiH4SAmIM5AoPH53NMb/aR5Kpd0vg7XwpdYMd8192kpMvg9CqCfewq6vMinSps2S3+abtb94N3ZinUAlKwcVjIfFzPgAtBtMw4HOS/VGJSEQoFv3R+PSi70IywDLAKUKKa+n2tkmiRx/uONvSAh7ZNUBF3wpQmLTAFDLDFF55toydgcPQ/plsAPGzwYxm0UFF5DW4h3TBp+IoaZTv6m91QIHz3pSfKnaE1IieEQsnttz2UHyg36gSfjZe88149dmPV9HkA7NFKfIOauvwz6LmamsLir2nRCDXgvU2olcDXQUAJQ= X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 May 2020 06:18:51.1843 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: e0ee29d5-e0dd-4839-2bab-08d7f63c56e3 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2509 Subject: Re: [dpdk-dev] [RFC] eal: adjust barriers for IO on Armv8-a 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" > -----Original Message----- > From: Honnappa Nagarahalli > Sent: Tuesday, May 12, 2020 2:07 AM > To: dev@dpdk.org; jerinj@marvell.com; hemant.agrawal@nxp.com; Ajit > Khaparde (ajit.khaparde@broadcom.com) ; > igorch@amazon.com; thomas@monjalon.net; viacheslavo@mellanox.com; > arybchenko@solarflare.com; Honnappa Nagarahalli > > Cc: Ruifeng Wang ; nd > Subject: [RFC] eal: adjust barriers for IO on Armv8-a >=20 > Change the barrier APIs for IO to reflect that Armv8-a is other-multi-cop= y > atomicity memory model. >=20 > Armv8-a memory model has been strengthened to require other-multi-copy > atomicity. This property requires memory accesses from an observer to > become visible to all other observers simultaneously [3]. This means >=20 > a) A write arriving at an endpoint shared between multiple CPUs is > visible to all CPUs > b) A write that is visible to all CPUs is also visible to all other > observers in the shareability domain >=20 > This allows for using cheaper DMB instructions in the place of DSB for de= vices > that are visible to all CPUs (i.e. devices that DPDK caters to). >=20 > Please refer to [1], [2] and [3] for more information. >=20 > [1] > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit= /?i > d=3D22ec71615d824f4f11d38d0e55a88d8956b7e45f > [2] https://www.youtube.com/watch?v=3Di6DayghhA8Q > [3] https://www.cl.cam.ac.uk/~pes20/armv8-mca/ >=20 > Signed-off-by: Honnappa Nagarahalli > --- > lib/librte_eal/arm/include/rte_atomic_64.h | 10 +++++----- > 1 file changed, 5 insertions(+), 5 deletions(-) >=20 > diff --git a/lib/librte_eal/arm/include/rte_atomic_64.h > b/lib/librte_eal/arm/include/rte_atomic_64.h > index 7b7099cdc..e406411bb 100644 > --- a/lib/librte_eal/arm/include/rte_atomic_64.h > +++ b/lib/librte_eal/arm/include/rte_atomic_64.h > @@ -19,11 +19,11 @@ extern "C" { > #include > #include >=20 > -#define rte_mb() asm volatile("dsb sy" : : : "memory") > +#define rte_mb() asm volatile("dmb osh" : : : "memory") >=20 > -#define rte_wmb() asm volatile("dsb st" : : : "memory") > +#define rte_wmb() asm volatile("dmb oshst" : : : "memory") >=20 > -#define rte_rmb() asm volatile("dsb ld" : : : "memory") > +#define rte_rmb() asm volatile("dmb oshld" : : : "memory") >=20 > #define rte_smp_mb() asm volatile("dmb ish" : : : "memory") >=20 > @@ -37,9 +37,9 @@ extern "C" { >=20 > #define rte_io_rmb() rte_rmb() >=20 > -#define rte_cio_wmb() asm volatile("dmb oshst" : : : "memory") > +#define rte_cio_wmb() rte_wmb() >=20 > -#define rte_cio_rmb() asm volatile("dmb oshld" : : : "memory") > +#define rte_cio_rmb() rte_rmb() >=20 > /*------------------------ 128 bit atomic operations -------------------= ------*/ >=20 > -- > 2.17.1 This change showed about 7% performance gain in testpmd single core NDR tes= t. Tested-by: Ruifeng Wang