From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1nam02on0045.outbound.protection.outlook.com [104.47.36.45]) by dpdk.org (Postfix) with ESMTP id 648AF2C01 for ; Wed, 4 Jan 2017 11:01:31 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=d9nRjDGJescbcyyFNJ5hX1q8T4vqSXtXL7+U33/y+Ws=; b=RfBKKcgu7kdowCZHIY3soT9y+I+4DKzFsllPJh020VtcD15JuCBMup/r+uHRJDavHv1egBHvATvJnnGwYeLo5zqIkBsLuPFjt/4CYWMddFdU1XKdi9+zwHjMXBTJF/Viv/emQLwuh8ensm6YNxDdofOJbDZl+48c5Rxi5QWZR0M= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Jerin.Jacob@cavium.com; Received: from localhost.localdomain (122.172.178.75) by BLUPR0701MB1714.namprd07.prod.outlook.com (10.163.85.140) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.803.11; Wed, 4 Jan 2017 10:01:23 +0000 Date: Wed, 4 Jan 2017 15:31:05 +0530 From: Jerin Jacob To: Jianbo Liu CC: , "Ananyev, Konstantin" , Thomas Monjalon , Bruce Richardson , Jan Viktorin , Santosh Shukla Message-ID: <20170104100104.GA6578@localhost.localdomain> References: <1481680558-4003-1-git-send-email-jerin.jacob@caviumnetworks.com> <1482832175-27199-1-git-send-email-jerin.jacob@caviumnetworks.com> <1482832175-27199-10-git-send-email-jerin.jacob@caviumnetworks.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.7.1 (2016-10-04) X-Originating-IP: [122.172.178.75] X-ClientProxiedBy: MAXPR01CA0029.INDPRD01.PROD.OUTLOOK.COM (10.164.147.36) To BLUPR0701MB1714.namprd07.prod.outlook.com (10.163.85.140) X-MS-Office365-Filtering-Correlation-Id: 59fc951d-bbf7-4f54-f2fb-08d43488a63e X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:BLUPR0701MB1714; X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714; 3:V2qyWJ07PwaX6E3vIpFdct38/FG/SA6m35ovhYm6pq+ow+GvEPjQ8T36YoX6wKke5UztAFTIJ8sO/EjvtfuUjOE4K192iEWbV8U0fE/960dy3yGkQVsnOZxsYnQ3KjZ6pp26kbKYMJG0PFQ4kDEr8ngN6OMUhETX002uA41Rd+QLdtLishtGQMiWMLtNYcq/MXtbhXVwuV4g2oExYX/gD4bs2OMFrihfr3/fMFRQe0aCiEqZzGhLXvsRUBDyjAXSlgizF1aTJtxKhCfNUG/I/Q==; 25:gvTPVUYx2luTPcpGCPBZ03aM/CDhWEBYP8DNX2w9Uh/D/gyf/VIZypg9buPKwzhtT0hhC6UypfNPchXPiFlL+DidwUsKMd+qgYcWf5eS69mTepYLKJB7ydVc5j4ctfSocTusQeK7LwdPO7qoyifJ10YgoO87x3q1aRkeLkDOS0NKWtDgfuzDbj+gsQiJVLJXhf8UuyFhXSXpZAUPKHWFVhDRtU9RYyQieeXtnz/uGieYs9/ECRJSIJg6WmstIVHX5A9kgp0/Vk3+n72BGbESw6PwAESSNbMlNQAUDX/lHV9t+Gj55d6ufM5LITITQc3Rl+uiRpJ+sdJZthJXtyxBNnXMWxn3rgRhe2J4ZHRwuKT3LvZo7EIhpimR5Awjfx5NtpZUjEZhNbhVEmM2WcsOqEg6SwOk+nLZE+fFAlsgHj7NtRdIg33rc8wspzdqBgBCt7xrxl9PJBM7qrtO3UCGbg== X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714; 31:ZwmenSu+m5tMVszNZubr52BN6o+JBmAUj+7WfVVHoqMqQkVz3CiBTf9coOtACZ3miGAIfGGiYlYhyCBqFJ07Zj7c8snShR0HxjkghWJ7lvoUzUyBQS3YYH3y9GLVJ4kv52Ly+krqVtuJchmMB2L0dg156PzyqeryJUbvJqDiizPT31dBy3+I0S4ttuZIa2QcgY8Btz9c2TDJ3bYb4oi/FH+BgiwJtbBmEip33Qgnr9qKhpPRU9xFICh2jWHri+D8; 20:Puac60kYcVIprUdaBYc431Wmu0t8C05tFcPU5qu5nBWx/u1pcC0IZVeWJypF9ixxemYPz5cbhY9wAqJ5SMgn+Q1/KReIunQR/l7Yn6jV3KLC3bFrcVX7iA6Zm7PCI+BxidCfhL6YpjuwPoxqH1qNzcEgucsHeKzGVd1POpTgEhAz4GgGKE2cO7ovBZXg5v2zywolvgPmbk6ElT+f6DOkrLC4JAaHWAbHXuCt65r5oe6YloyKNNnoeJgDuTE9E0kEwnY2yihfn0jW6q44j2WEzX4gevLJw3dgVr/0/XMQ3p/Ub359o0tPiDT34HTzAyj4fM8RjejQYqmecTaM8ug2lXGhISGHc48tMbUzWjCaPh9YGNg4bqwGOoNM5zxdflXMT8OlGqOD2hhYi2cTrhuzOGzU2/EZYyg9flPZ+Ay4SFcKOvjqCLRqLUunLq1YdESzo4JeDBt22WGOD4gyaZUiwPyzm5MsHC93ELVjolsOG62WbIDePXsS9CXFJW7+s4vsU5fufvI6yOxlVLjFO/IRHHb26SSiI1aGd93FKYyR2Iln8DrZySiNQPfGtwGwOXUlIyxyYUpo1OgYN82KpH3BgmaP/wYnXLk00aM3irjZUqw= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046)(6041248)(20161123564025)(20161123562025)(20161123555025)(20161123560025)(6072148); SRVR:BLUPR0701MB1714; BCL:0; PCL:0; RULEID:; SRVR:BLUPR0701MB1714; X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714; 4:UFQx0nae1ftvfabrPHRILHiabN2mViTqCEtJfkSIHuPUx3IbR5Ju2sTmXvmT4v5RvA2/k1MEn3qO38TFRkB5yuacqh1p8ZYXdDnUC5868epfr0m78uEPUlmNkrxg/Jqh18ErxE8ikjCWI6JRHLNPEe2GVIe4y2Y4Dr5szSO+djqSV9i5/NB8DQ+74PRLni3OnGmZoOus7WQ2W3G2JUbrw2qh3IM/z4qCqT5pwBapBxmo+FVSxoUXC8PnpSqEXquwsOIOIi9izC+wtlWRIiTXlzyBPWp/AxxjzRDBJ174SYSBJ+BsRi88j8FqwbiNE7Jr7VAc4o33RnVOHjtGujTjeozgK8B2xdjo5x8FQa5UHuD1e97ElsQnt0ZAukW6TNXzREqlASeLPTHxMRafs+SNMMQvpfzqhQrUWIKEGO2L7z5LyUjRwjAF4ODogRPvwUfPF/Ix4pFpuLle2XqyBUFsndhxIpNcgaXXNslfqXKXdrqJ6poQyuVwxaINgp+58KwJ3olirbFqtjAX04Yt/bihNnKDN99zhicpR0sua/1PVR4vyEpCZ5kWgqfYJNaB0KKNVMRO7eA+8+uaiDdMa1+c9Q== X-Forefront-PRVS: 0177904E6B X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6069001)(6009001)(7916002)(39450400003)(24454002)(199003)(189002)(42186005)(66066001)(107886002)(6666003)(81156014)(6506006)(47776003)(101416001)(7736002)(46406003)(50466002)(50986999)(105586002)(5660300001)(25786008)(81166006)(3846002)(76176999)(305945005)(23726003)(33656002)(54906002)(55016002)(54356999)(106356001)(8676002)(6116002)(83506001)(229853002)(2950100002)(189998001)(4001430100002)(2906002)(93886004)(97756001)(1076002)(110136003)(4326007)(97736004)(38730400001)(6916009)(42882006)(68736007)(9686002)(61506002)(92566002)(4001350100001)(575784001)(18370500001); DIR:OUT; SFP:1101; SCL:1; SRVR:BLUPR0701MB1714; H:localhost.localdomain; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BLUPR0701MB1714; 23:p6X2/Rh9D9525WxjeT0W5+TmcfsUJT3IKXePKIJ?= =?us-ascii?Q?7S3DXeNbVAyttG6Wf+l/eVfyHqblHiyhLzPnjSBkX0JW5VucF80w3F5b4nnM?= =?us-ascii?Q?Whp8Ad1Uju0xGeFSUwKY42ECD07st45wHexN16K78ABtZMxIaFNNpurltnJ7?= =?us-ascii?Q?DH350wZSjEr6GukSoD0wWMG10AZPJO9NC0pqzs/Do1+y/XkJsptXuAXQnHE0?= =?us-ascii?Q?B4EP9AjySe2vVv25GO4TaSj72/C+cYcT90MUq+aBJ8GX547PrADC9YEyr+jf?= =?us-ascii?Q?bMaBAGnDbw5Ho/Tj2nF6KtF0ziJTm12UBSjpbJCSOkmMp5SXuD1bXrAjnRaY?= =?us-ascii?Q?+jNxCRZzNxx+Qaw5ikdwTsxSZs6qLzNVd/OWUPPtQ1RhG9+ts62rcV1v/HC9?= =?us-ascii?Q?AojB3Iuf/X+tOC5htwyDBtMaUCgOIaOIN1KCG4DyMQqv7d6B8lGVJiUghQAb?= =?us-ascii?Q?fD92nLBAiX0KoYJ7c29g05QydyecekSFzAJ1N4uxaaZguhPF5sAgNcuWCYVX?= =?us-ascii?Q?8OShkuyJUw5MpQG/8QA5VT/RGJiNS/OKPdFAx81+RZtZ1yIQyssQUpKDWGoq?= =?us-ascii?Q?+RunRteBMcNm3lz3ALXKpsW2KkAgdbE5Ff0xxriiWiniujteOG8U4V82axRa?= =?us-ascii?Q?SXsqOQWSe1g3+S9Ou0bFU0j0Q363rK+LEu+NT6QpRm883gV9NG3OtqQrL27I?= =?us-ascii?Q?OGhwYIxTdnh/vX2OJMMbj+1wr21lG9FiJwmiQOEuZ0HfopYjUWmtbtPXsQFr?= =?us-ascii?Q?9m8TW4oNF+5qAzNOy66z20MldivpyRms13HbcmjjtFs0kKYxoTGoGXLAvCCI?= =?us-ascii?Q?DB6jLVnK2JOnt7o+b9cdggBWohpHGrG9VNMDC6wVfUpDlbfJdpv6kQhRSJZv?= =?us-ascii?Q?qaOupdxU07GJjaVQllIdcoSHdGSmx594SaDmeksJpLeQkqMnbpprceYyxxgy?= =?us-ascii?Q?bC2eC2gdbMVisgUCEpc8T5wEXfvqSEqrItPuAmm5DhX3w/Tr3szvDWCXEEF4?= =?us-ascii?Q?fonkW4hsus19Kv+Jk2FIiQBbNVJBJKNtE94gatqS6FdYmI4BBosHEqhy0o4M?= =?us-ascii?Q?nRJER+ZjH9z6abWATfubrLqozcsbkCZ0kjyFJYvoZs2Fb1haUlHQEBINmHKJ?= =?us-ascii?Q?/yOa1iPYAq1ThUY7F3f2HUnyLhnYtRrybm6NoA4RyQoYFVjUcyz5fNNl1iA8?= =?us-ascii?Q?R18H0lzcdnB/iAXABYljT3xPq197HP06FewnH9vktXJwU78c7eUaDN9UbFHP?= =?us-ascii?Q?0iqA+gWJp5jZRL0FCUsX0SFzth91m0G3zkVapZ5UIzL5TL4zyL5gwfJz8wEd?= =?us-ascii?Q?am2ohYOoqudiXpZE9+G6bdOsnLJFq9x+HniK30x/sXujwpXxvR4ISGnNOjWO?= =?us-ascii?Q?/+eL4kmqHnTIdjxQPCnhZqBjnmB0=3D?= X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714; 6:Oa4pu1/PlBT02BYgpd6lI32qlDCYXrM7hplHs/BVoCLlm9i0Ryv3aSf+XDrHXCGU5ZXa/YZdArc9FmYYJ0G4uhvUf5zs45Ec13KNf/I4p3aWZwQeV8hFE0zUSfXPW6waLwoqhX1ysLCDO8YvyEj4nkg/RASbsOOAczNGyER8OW4cECyBDztevssFqBwUg7H7PDpi5K9VJ4Xl+5oNMH8OuaXYd5jhnoz1Gsc62xGzffOtdIjftCdtH1CekyKT01ojwE61ULHEy7K76qPf3Oxnh7owkYMbKoj738riQyLCNn/ha3RL0veGpObFtlb+PpmUGDlGeVvA5+OYRp0HwV3crlSNbpL3EIftd72oZmaasF2jy5iZCIDTHmRmaZE/wSVD/D2snUsAfhjammZol/A8yqN+mGipWs3wdJcjFJ3EZq0=; 5:wgdlkmbFbIqGFFCKB4C+Kq1SzoyVy6+SLrysjCFIFwggO19YaCNe55shZ1D4qpAsYamc5d9Jk+uZN1w/4KvzuiIb5sZyZBEZ/xufIxI7ZH2/79yxYySUFdfDmVdHbiC1jprqRwSTbOGdZ7KbJkDSOFjDlAKQuFUDXCfzNrmP19o=; 24:/bev0isxg6+pRP3hPBtBwQnh4nOtgYXzBupR98Wn1egysujDSPO56jDeNQ7jIqccSi24nwzFtJKoxb8W47wAIZ4JBef7mYctgaG3JmT0QjI= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714; 7:RPLiRO/gj7APYQ6p68cs1oOPOjcR7Ods/8QP9KS5YHQrXAxMatSKNjAmedqv9GDQNdIwsnRjMeiW4gTMMoHtxRrR+Ft3KwcmqLeABPRqrJPzsUU/bYJWc919BtTSQm2LoLnBCHSgC9XZI1IyGiOMQTLXSxTVU2oCb8mRMa1YM8YiIT6Mi3L5y8sRWica2/8HC6p6COtVFrSq7oQZZr2JzvBSbwPVNmaaOAkcnrj+eiAgw9qFFiifgSI9huN6xHzSeSlAmlaAxRG+dn1FdzaFkZY0hs8q4TiG9b8ZcVZaoJhMdCmmEiJKOSiVtTtMmqhPBPfBsaIZpa5z3wPSqegORzDJVcB1thMQpLSqYbnl0/XaiaHdDEkTWawr50ur/rpMPTdZV+7b4TVwh7jEW0e2nKMmS/pDx7X7efrkzSWy2Hs4XbVnXtrlgfOzFAFXwtz5F/SiM2jgfLBtnpz+0BzdMw== X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Jan 2017 10:01:23.7848 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLUPR0701MB1714 Subject: Re: [dpdk-dev] [PATCH v2 09/29] eal/arm64: define I/O device memory barriers for arm64 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: , X-List-Received-Date: Wed, 04 Jan 2017 10:01:31 -0000 On Tue, Jan 03, 2017 at 03:48:32PM +0800, Jianbo Liu wrote: > On 27 December 2016 at 17:49, Jerin Jacob > wrote: > > CC: Jianbo Liu > > Signed-off-by: Jerin Jacob > > --- > > lib/librte_eal/common/include/arch/arm/rte_atomic_64.h | 6 ++++++ > > 1 file changed, 6 insertions(+) > > > > diff --git a/lib/librte_eal/common/include/arch/arm/rte_atomic_64.h b/lib/librte_eal/common/include/arch/arm/rte_atomic_64.h > > index 78ebea2..ef0efc7 100644 > > --- a/lib/librte_eal/common/include/arch/arm/rte_atomic_64.h > > +++ b/lib/librte_eal/common/include/arch/arm/rte_atomic_64.h > > @@ -88,6 +88,12 @@ static inline void rte_rmb(void) > > > > #define rte_smp_rmb() dmb(ishld) > > > > +#define rte_io_mb() rte_mb() > > + > > +#define rte_io_wmb() rte_wmb() > > + > > +#define rte_io_rmb() rte_rmb() > > + > > I think it's better to use outer shareable dmb for io barrier, instead of dsb. Its is difficult to generalize. AFAIK, from the IO barrier perspective dsb would be the right candidate. But just for the DMA barrier between IO may be outer sharable dmb is enough. In-terms of performance implication, the fastpath code(door bell write) has been changed to relaxed write in all the drivers in this patchset and rte_io_* will be only used by rte_[read/write]8/16/32/64 which will be in slow-path. So, IMO, it better stick with dsb and its safe from the complete IO barrier perspective. At least on ThunderX, I couldn't see any performance difference between using dsb(st) and dmb(oshst) for dma write barrier before the doorbell register write in fastpath. In case there are platforms which has such performance difference, may be could add rte_dma_wmb() and rte_dma_rmb() in future like Linux kernel dma_wmb() and dma_rmb().(But i couldn't see all the driver are using it, though) Jerin