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 2A37545AE6; Wed, 9 Oct 2024 04:22:26 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id AAB774025E; Wed, 9 Oct 2024 04:22:25 +0200 (CEST) Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2070.outbound.protection.outlook.com [40.107.20.70]) by mails.dpdk.org (Postfix) with ESMTP id 7DDC64021E for ; Wed, 9 Oct 2024 04:22:24 +0200 (CEST) ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=NlKKG2wSwtFLO3yzgBIINRhznPWjdJaiK6eztyhozp+N8KZV93FkmvJBXvc0JeHQjxU/EN36wNFD7O1H2muFZWMlpzzRlQ/z10jM/OK1CDCMKEp4/fj9sFYMnSdibh5wTFTMQUQvU3joNcQstXtbsaxgYsLJFDh+AuC3LZA5dbuXfOUW5RHjGOUNRrDWs5RixROOHVC+choaQYCSWYEPZvMC2KqtsIOqcbjGZhuP8boIULyz3Fqn1Nfaxg5nF1XTKhEbCVyVoz85JIh3MT/jI2SFBzntHuAda1+MLdlo/oKI527+0zHFSctTQ40DSACYVTputZu4d2deUB0U6e4E3A== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=BfJ31cX0N2zvKfep0JwTA7aKSBV2yBd3rfoZx9nNScY=; b=mHpNtyFjxeKfDRamudp3Cx7Iizz4JxBcAQmP7MTEAodfaQhHbsw5yjQzidkg2qJnWd6lDsGwDmWOZ9D9+JYiqEGdOJzM1oZJJkpiGdBfLwa8E7PLngjqOz0ZH+4XOUUUzrFLsyPHUtRVGzL+5TtIrqUWShTIB9BkJCMq3ha5v26O6Spfy9G6W5cdOfUWyg3DbFmUP/lcMj0OH8BbvCKm8AlKXcfzVF9kASR8EIvx5oHIyenor6OjJO0Gb0p/bCwcGVhWMdtgyAVnKqTyioK6NRyW4hHo8L2OaZw4ccSgcuuwMS49cNQ5M8iPaRvTswgRUW2U7QPX34UgAj36wlYsig== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=dpdk.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BfJ31cX0N2zvKfep0JwTA7aKSBV2yBd3rfoZx9nNScY=; b=brzP/kXiA8+xGBDSXBnQHEb36ayyjJCvuKA17cRdsvKsJ76mq/68R4sejKIdkismMqYKgVasg8fkfSNNZNLzcdkQaLjhY/ULl+MNqJecceN8TKdyYfnty0LuKluN7tCXmwk9gqS6WhQDBJBU3AfKy4HnhR/0nN4uSotz3M2fK/k= Received: from AS4P192CA0019.EURP192.PROD.OUTLOOK.COM (2603:10a6:20b:5e1::8) by DB8PR08MB5451.eurprd08.prod.outlook.com (2603:10a6:10:113::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8026.22; Wed, 9 Oct 2024 02:22:21 +0000 Received: from AMS0EPF000001A2.eurprd05.prod.outlook.com (2603:10a6:20b:5e1:cafe::5d) by AS4P192CA0019.outlook.office365.com (2603:10a6:20b:5e1::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8026.23 via Frontend Transport; Wed, 9 Oct 2024 02:22:21 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=arm.com;dmarc=pass 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; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AMS0EPF000001A2.mail.protection.outlook.com (10.167.16.235) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.7918.13 via Frontend Transport; Wed, 9 Oct 2024 02:22:20 +0000 Received: ("Tessian outbound 994fc319cf83:v473"); Wed, 09 Oct 2024 02:22:19 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: bddd9a6efc0fe01c X-TessianGatewayMetadata: FrfSu0eRVrt320rYFLRxLXfnbHqD+ExEDAsSDv/cW1yXQjRZ2hwZMwbWbQXYHS+D9omE5usK8Feb+DYG4zNm0KavUKcGkrbX3cgIhh3JRGrauFLkNTZJ+hzTgJGQtajYMZG4Sa37zzYdsj8oDkZo++n4gLYIgYy4ZgS0aDtFrRAlPeagLecE8JATfFcBTThc3r3cL7b35u3ybott+31jUw== X-CR-MTA-TID: 64aa7808 Received: from L09beb43649fc.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id B8FE81E5-0904-4F86-89F6-934C8E8B794A.1; Wed, 09 Oct 2024 02:22:12 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id L09beb43649fc.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 09 Oct 2024 02:22:12 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=vi2GWr1+i6RuA8BTXdmT34CYieucTMhfjNoaoAq2fIIc8fzrfLXyYGdu6RhLteCV5r0JUB9uQQz6Qp4pb9nrnv1bo0HoOGVq2OHkbP5lOSXNTEDxQ2ENCdTOGqRWulW4iN5irNto548PZfRt7OE5P4YCe69iM1ClJyjlAvSDbNWi7xaGfIYLFlnmO9HXNyqRcK2Q71y/uCRslIRhObh2VvImbc5X+w7I9JgD/aaOtugD0/p1LPB9Fo6lKIJMyxVzrJ+gcSlShzoRWQLZf5D+ZxkWL6eShSS9z1PM6bKfhZtw0fLqXwdC0zNQ2oH+4R/J6E7uFHPVQkov0o3MJw0YJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=BfJ31cX0N2zvKfep0JwTA7aKSBV2yBd3rfoZx9nNScY=; b=EMrAPKFGSwpi36vyHhzEejsjOPtAJ/HADgdINMQoUqI+Li8hu60eO8PKYBZXfw8kETethpFchgopGRQESEjt/ZsAwTvcDgod9NWQ+Qf0kPxiwgRnTLBBUNrYLBZxQ9ocpFjeWa5m77eHdGbC/ervfkK1pT0WI/4G9gl2rHVuy4SdBajoZs0ggJzeK5OEYtWpdM5zsxqTJJwDpPC5um1wL/WPYckGrXWri18RinFOUYevm4L0efaHylgb7JLhIBfWhY60QKhRsV4mlVnObe8mMnMWU0+R1zJ4ZBTIARkWVcc30evX80LSZueJF2awToB60aK4uFPKxQtj8+4qUydYnQ== 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=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BfJ31cX0N2zvKfep0JwTA7aKSBV2yBd3rfoZx9nNScY=; b=brzP/kXiA8+xGBDSXBnQHEb36ayyjJCvuKA17cRdsvKsJ76mq/68R4sejKIdkismMqYKgVasg8fkfSNNZNLzcdkQaLjhY/ULl+MNqJecceN8TKdyYfnty0LuKluN7tCXmwk9gqS6WhQDBJBU3AfKy4HnhR/0nN4uSotz3M2fK/k= Received: from PAWPR08MB8909.eurprd08.prod.outlook.com (2603:10a6:102:33a::19) by DBBPR08MB10556.eurprd08.prod.outlook.com (2603:10a6:10:531::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8026.24; Wed, 9 Oct 2024 02:22:09 +0000 Received: from PAWPR08MB8909.eurprd08.prod.outlook.com ([fe80::613d:8d51:60e5:d294]) by PAWPR08MB8909.eurprd08.prod.outlook.com ([fe80::613d:8d51:60e5:d294%6]) with mapi id 15.20.8026.020; Wed, 9 Oct 2024 02:22:09 +0000 From: Wathsala Wathawana Vithanage To: Konstantin Ananyev , "dev@dpdk.org" CC: Honnappa Nagarahalli , "jerinj@marvell.com" , "drc@linux.ibm.com" , nd , nd Subject: RE: rte_ring move head question for machines with relaxed MO (arm/ppc) Thread-Topic: rte_ring move head question for machines with relaxed MO (arm/ppc) Thread-Index: AdsZem51pV3bFdnOQj2Lv/oX5wHuJQAE4tywAAJgEaAAFXEM8A== Date: Wed, 9 Oct 2024 02:22:09 +0000 Message-ID: References: <8139916ad4814629b8804525bd785d58@huawei.com> <0badc1b8ea524bf3b69d0b7b316bdc8f@huawei.com> In-Reply-To: <0badc1b8ea524bf3b69d0b7b316bdc8f@huawei.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: PAWPR08MB8909:EE_|DBBPR08MB10556:EE_|AMS0EPF000001A2:EE_|DB8PR08MB5451:EE_ X-MS-Office365-Filtering-Correlation-Id: 44fbf560-2eb5-4544-2394-08dce80933e1 x-ld-processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; ARA:13230040|376014|366016|1800799024|10070799003|38070700018; X-Microsoft-Antispam-Message-Info-Original: =?us-ascii?Q?OGqtm5HUhtOtacK0WLLNu2FCN7pCD8llSmmGAyC1EbG6mqLo5XYzhLMmChRk?= =?us-ascii?Q?gI27BlTiqeqA9fK1FHYg2ETHlBTlqgHFkIQlyMfTC1UBpullFFmxW3VxpzlM?= =?us-ascii?Q?TLL7nTtfCFm4BMOfXlV8prqpl3OwPzdpf0HbWFR+yzeYPDVQHTBpHvNuhwvs?= =?us-ascii?Q?zjuyWpUWGr/3lw+Rsjn5a3F/IU3cPLuVXhHJOLutRzpAJUKz+UL89lmPPcwJ?= =?us-ascii?Q?7/ChVN+TMq9ru+596tCoO5L8UnFCmPlZktDSLdZYXrypNRThC4RiYr7QVqdx?= =?us-ascii?Q?TWH/Vvr2nLNeo5VqlvdJpJV0EFhdeP0r3wa9y8Ejs1WNb9BmRxdjAIO89+uU?= =?us-ascii?Q?tLFHnotIXpOUVLA1rGHZY2w2CrDASGji2943bgmyzuf5525fa+MzU+7I4q+z?= =?us-ascii?Q?DdDpsauoVu2mey42OQlN4VzgJAK9OursI4Wga3AhXheX6k6sso+AShuEhirD?= =?us-ascii?Q?IC0FVTJ7GCFfjtcIcLjzq3s7gqxj+Zp+e8qx4CnzxbMJNzOs1p5WZj/CkLa2?= =?us-ascii?Q?4ayc6wdPZyjgmXS7PLBKnvVzvX7fICxGhAal9w0CrV8dHk5lpQdFmYwAsR84?= =?us-ascii?Q?kYD2C/ddTxCstM2eioscryYyKXgaVCsUwRWuj45n6vv2bNAU9GF0XgzN5MxN?= =?us-ascii?Q?/+lv7OqlaLoYWXD51nHjOACTCWMtd9tYx2wX9kT7KpTmS75IiqdSbrlw5mL6?= =?us-ascii?Q?gM3WHuty+Qdy1qitQmdQ0W7UzBID3b4hhyVSWP1Z1HXoEwmV2i7RUYRi3m5g?= =?us-ascii?Q?BlGClIJpF1hEC69A6ESZDyvMKtU9j1KXTnvh2FeJ3BvqqrVDUjhcFvDtbGIP?= =?us-ascii?Q?MF9xqBxvuP3NyHQSWvNtKM8KimP5vfIAvLwmAnz3D7sq7BYiv1EpXaMUmVux?= =?us-ascii?Q?MA9hqHVFBGMD4oMaJKHoB+olTCdqF0WrxFIn/e7PTLjkNUBteWHnviuMZgAD?= =?us-ascii?Q?pr2oy44zSM0V0kkVs3ZzFKVQlVNxYUtJevRBPI1lr93/tRWBk5LDBkOHLh8a?= =?us-ascii?Q?XWxZ0dib10A2PIadz5JQA8OHaUYjMlIz48QJuDRT7Qw5Ws8b/WdNv5a/F0/5?= =?us-ascii?Q?KhdI+6T7rSuqOmoiNzhwyWx7AKygR73lMvqqwHIHM0OVA4N6hdliD71aknxi?= =?us-ascii?Q?SC9alB9J3wwkBOsrUQD+DAZ/uhn9v+EgxqZFcc32iEnMbTrlPTk6tecvISWJ?= =?us-ascii?Q?iyvbeHuJdUlpWiNkiAvKVZGeDSCr9eFr9ST8G3vA3KPCqiweoa6OdKAdNzye?= =?us-ascii?Q?kM8rAzFmQlLlPrsDpOyXDlz7ZLn6/cE1/P06f9q9UlFxKfsxY61lTod11U3D?= =?us-ascii?Q?waJhnx86wZ6svi6nWpMzf4VkLD/Q+Y6c5f9NTxomh+YHiQ=3D=3D?= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PAWPR08MB8909.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(376014)(366016)(1800799024)(10070799003)(38070700018); DIR:OUT; SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB10556 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-SkipListedInternetSender: ip=[2603:10a6:102:33a::19]; domain=PAWPR08MB8909.eurprd08.prod.outlook.com X-MS-Exchange-Transport-CrossTenantHeadersStripped: AMS0EPF000001A2.eurprd05.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 8662955f-940d-42c5-91da-08dce8092d9c X-Microsoft-Antispam: BCL:0; ARA:13230040|82310400026|35042699022|1800799024|36860700013|376014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?bJshUdwOALChYoS0NLf/8C3hi3pNBnDMZW1AOu/cYwJKaLCF6+dJ1TspMFSt?= =?us-ascii?Q?RbjUkEYB+GH8ZpaFOe7zQ7UmFre1b52Umq9fqrKnVcGzrndZtxsraX017trR?= =?us-ascii?Q?vAN+qMEw8VcPeVQgtA77A3cNMyaWuIjKPLAth4Fw5MKpxsl3Dq24Ix5gOisA?= =?us-ascii?Q?X0iVuO9zND9jSkVQ5PfaubV4Bd3UQtRwTWaIwV/+dPdby2A0SRgSGhPAcndb?= =?us-ascii?Q?WsjUnXiRom6+9fgrgTlKggZz5WblR6NqgLdWGKeMYeJ7U4BVcdGzX/EG5l60?= =?us-ascii?Q?toNMwESk3tF5pKKKRtjovFXE91AHv1wWkaAHkA6AqpYTJq8Sl9Hg604NYEDi?= =?us-ascii?Q?d19U+Rv6ltaPwrhb8Fz1HN9ES4LSSJLHCthcMFvJlC9J/MEVlQxXXI1+B2dm?= =?us-ascii?Q?g5WYOeXsN0kzDQdJqEkDqvTsnP37PEEZJz3wlE2AzTlb1ajUxI64Z5d9YnZF?= =?us-ascii?Q?d9JP28DNvoCi0Pf6dS+S1MrRUmSp4Q/9EUH5l6pxVAvZkvfx7/O6bQthqX35?= =?us-ascii?Q?E254lu4gn/Lzs5vGu3ZyQj6juur6AtdS7xW2urPvUIpnTSfLq8u6aroXSSO/?= =?us-ascii?Q?C42T3exsPQOlnmCbWiakCBtV2+F0k+tV1zmHUyOD6goZq2PrCCWafGLBKffN?= =?us-ascii?Q?zC+81twqifDPqraf6er77qihB9CPn+O3gFiYx7zzDppxOhcsm58Ad42BNH86?= =?us-ascii?Q?N3yXK+WekK+VIlvA92C1Uul3nIG0Dt62gnIJKuX+hSoqPab1GEvJVtyy3bGk?= =?us-ascii?Q?WBbetZa0SiiDrm1daVMKX+kS8uJLtot/tRi20sGw3Uk3JtvqMVm8twPNneCR?= =?us-ascii?Q?wHhs/duvk/dsWiWWkAk2wrj1dHz41C6vpiYLE+Qsk+n1l90yPCt9c06ikZJ6?= =?us-ascii?Q?7VFfIr5PzVSxY4+D2Z6U4+SVd5DYfSwRrfZY3J9UMkLF9tjoll5wm6NYTIcT?= =?us-ascii?Q?2xv7yrjMdqrklsloZmQcyKxsDe0MoxU42S4AeudoUXTProTcXMxdEstAzKJ6?= =?us-ascii?Q?LTgSd35qhVX8LeqXPCr2dfZMJmTYkmDGDMYb8imGAZrHiPR2StFAi8NGRfZ5?= =?us-ascii?Q?E01eXjrNRsPW4MzALduoqAP+/z8TO4Gb/f2LLLVME/1qZGvOkzVKeUeZ0FZb?= =?us-ascii?Q?KrWJmZhtX4mCRoysq4HWiQy2EqHaYxKB1I5IwctNGREoePvDWq2SbXc7FCxC?= =?us-ascii?Q?WM4Jl+6IRcUDimECtKZTNT9wF9O901Uw/qgGMCcvkPlZXtzKa4YYxX5N92qt?= =?us-ascii?Q?3CUBjq2lC7FMNVqnj9ERIaegm5LNO6oxWZ3hyc3oOgJJi7sahVYu33f+c7lE?= =?us-ascii?Q?tQGRIBowpN4t3aBN4Bho3kqxaQO85IoStPhJbJBR3mdEeka9pZcxWkoEuD5R?= =?us-ascii?Q?pfQGq7NKjBe2whG1xCkb99ugD+cu?= 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; SFS:(13230040)(82310400026)(35042699022)(1800799024)(36860700013)(376014); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Oct 2024 02:22:20.1885 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 44fbf560-2eb5-4544-2394-08dce80933e1 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-AuthSource: AMS0EPF000001A2.eurprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR08MB5451 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 > > > 1. rte_ring_generic_pvt.h: > > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > > > > > > pseudo-c-code // related = armv8 instructions > > > -------------------- = -------------------------------------- > > > head.load() // ldr [= head] > > > rte_smp_rmb() // dmb ishld > > > opposite_tail.load() // ldr [oppos= ite_tail] > > > ... > > > rte_atomic32_cmpset(head, ...) // ldrex[head];... stlex[= head] > > > > > > > > > 2. rte_ring_c11_pvt.h > > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > > > > > > pseudo-c-code // related= armv8 instructions > > > -------------------- = -------------------------------------- > > > head.atomic_load(relaxed) // ldr[head] > > > atomic_thread_fence(acquire) // dmb ish > > > opposite_tail.atomic_load(acquire) // lda[opposite_tail] > > > ... > > > head.atomic_cas(..., relaxed) // ldrex[haed]; ...= strex[head] > > > > > > > > > 3. rte_ring_hts_elem_pvt.h > > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > > > > > > pseudo-c-code // related= armv8 instructions > > > -------------------- = -------------------------------------- > > > head.atomic_load(acquire) // lda [head] > > > opposite_tail.load() // ldr [oppos= ite_tail] > > > ... > > > head.atomic_cas(..., acquire) // ldaex[head]; ... = strex[head] > > > > > > The questions that arose from these observations: > > > a) are all 3 approaches equivalent in terms of functionality? > > Different, lda (Load with acquire semantics) and ldr (load) are differe= nt. >=20 > I understand that, my question was: > lda {head]; ldr[tail] > vs > ldr [head]; dmb ishld; ldr [tail]; >=20 > Is there any difference in terms of functionality (memory ops > ordering/observability)? >=20 > > > > > b) if yes, is there any difference in terms of performance between: > > > "ldr; dmb; ldr;" vs "lda; ldr;" > > > ? > > dmb is a full barrier, performance is poor. > > I would assume (haven't measured) ldr; dmb; ldr to be less performant > > than lda;ldr; >=20 > Through all this mail am talking about 'dmb ishld', sorry for not being c= lear > upfront. > A: ldr; dmb ishld; ldr; -> load before the dmb ishld should be observed by = the inner shareable=20 domain before execution of the second ldr. (Also applies to stores program order after dmb ishld.) B: lda; ldr; -> second load cannot execute before the load acquire. (Also applies to stores program order after lda.) In theory, I would assume them to be at least roughly equal in performance = if not B is more performant than A. > > > > > c) Comapring at 1) and 2) above, combination of > > > ldr [head]; dmb; lda [opposite_tail]: > > > looks like an overkill to me. Wouldn't just: > > > ldr [head]; dmb; ldr[opposite_tail]; > > > be sufficient here? > > lda [opposite_tail]: synchronizes with stlr in tail update that happens= after > array update. > > So, it cannot be changed to ldr. >=20 > Can you explain me a bit more here why it is not possible? > From here: > https://developer.arm.com/documentation/dui0802/b/A32-and-T32- > Instructions/LDA-and-STL > "There is no requirement that a load-acquire and store-release be paired.= " > Do I misinterpret this statement somehow? >=20 > > lda can be replaced with ldapr (LDA with release consistency - > > processor consistency) which is more performant as lda is allowed to > > rise above stlr. Can be done with -mcpu=3D+rcpc > > > > --wathsala > >