From patchwork Thu Jan 25 21:02:49 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yongseok Koh X-Patchwork-Id: 34509 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: 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 856981B28F; Thu, 25 Jan 2018 22:03:41 +0100 (CET) Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on0040.outbound.protection.outlook.com [104.47.1.40]) by dpdk.org (Postfix) with ESMTP id 452F21B1B6 for ; Thu, 25 Jan 2018 22:03:28 +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; bh=B/9nKJVVmAkDlzhZsQyP9tmDjnJ8nCWpzQ+qna0PYi4=; b=xBCPHCY6zNi3uJv77oiurXxfUuPfjnqGX9bPy1X+DDukTCdm1rIZZ//7NWDjLG/8k4VzKD11N6u1p8BjCwuf3PvGYaXy6tL/u/VVxfB0HBT03fI/bIsPoKmFY4xdQ/MaJS8oHF1ENd1BzbtipsHLlbelwEo3r6XYrwjeV4t9rD8= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=yskoh@mellanox.com; Received: from mellanox.com (209.116.155.178) by DB6PR0501MB2037.eurprd05.prod.outlook.com (2603:10a6:4:6::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.444.14; Thu, 25 Jan 2018 21:03:24 +0000 From: Yongseok Koh To: adrien.mazarguil@6wind.com, nelio.laranjeiro@6wind.com, bruce.richardson@intel.com, konstantin.ananyev@intel.com, chaozhu@linux.vnet.ibm.com, jerin.jacob@caviumnetworks.com, jianbo.liu@arm.com Cc: arybchenko@solarflare.com, dev@dpdk.org, Yongseok Koh Date: Thu, 25 Jan 2018 13:02:49 -0800 Message-Id: <20180125210250.38233-9-yskoh@mellanox.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20180125210250.38233-1-yskoh@mellanox.com> References: <20180119004430.15305-1-yskoh@mellanox.com> <20180125210250.38233-1-yskoh@mellanox.com> MIME-Version: 1.0 X-Originating-IP: [209.116.155.178] X-ClientProxiedBy: CY4PR15CA0014.namprd15.prod.outlook.com (2603:10b6:910:14::24) To DB6PR0501MB2037.eurprd05.prod.outlook.com (2603:10a6:4:6::19) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 0d4f77b0-feda-46da-a3f7-08d5643713c8 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(48565401081)(5600026)(4604075)(2017052603307)(7153060)(7193020); SRVR:DB6PR0501MB2037; X-Microsoft-Exchange-Diagnostics: 1; DB6PR0501MB2037; 3:hpAkXnL7ARPw/+B2qFR0UhsFH1kHE5RGP81glNxLVic/OsHHWQ2zoYNlER+7bHVYgO1eAfhlodj6AWRo/zRPjeG21cHRG2c58rmEMYIdvgZKMD11NfmnPIZObkSgprOLub+CygzH2V/2FFoQuFE+mfX9YdLsvJAUnbfHVscBkLQoco6ze6M1c97tVnsl6UCxuws/ABXSTiYY+95YyACTAZ0AlKC/Pt+7mMmFGOXJ0NEUdg8BusEPtYZsJ3Szt2mh; 25:1BRhjumbg5J5W5bcN3fqqGbJP1mw4Yul4U7x3/JfL71GabXrDnb05Xze2qwu6aE/GUFSlXDNhQiDn6r3oz+AqPlIYAPo+OXSAb7MrvJrNbJGVXit4CQ9y0CuVdxR9YrmshJNEdTrkyR6NFFpDGhRx0GX/RuZVX7Q/Ya7i6SU22mgI4sMn1BDKAhja7N2yOvRcK15BxuJc708Do9zVZ8L4GRXIOzcb2yLFeZ8d5AFGmYDk45dwQ+kQkhF0VUupMdjJXw1/nB7i08mS+7HissSTHMTID/N5HrbCFOUfzYTAcRaOeylODyZqFVE2ArSdOPVou02FcxqYyka69ulbBqgNA==; 31:YNEt2NmEih27ZTxTk91QOmmtnqid6gv0P1pa50gkD/SCvyVD11B7SRi6JZbgdNhgVpcvo3gXswCrMlrbV8zzBxZ1aKdpJK0VxaIM7L28O12xcfn48GP1pPSNOQLpbXnlBMXDTDaekPqYt5z+XFx4LhGVZPQi+nSoI7lHgIQTVK11orJRhhwVUb4ZYuMIiW4y5vRG1+Z3Xd8wu3Yg8zi41UWpFS8cxMaXb1RpgwAOOr8= X-MS-TrafficTypeDiagnostic: DB6PR0501MB2037: X-LD-Processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtAddr X-Microsoft-Exchange-Diagnostics: 1; DB6PR0501MB2037; 20:1kllXH86UaRWnpi4dayEYQ8nkPgES2To9pj8D2/eincYGFZXATeFjXls6hyLeOyXYHejS/HtDHqbI//DNfxk3UJur2pL6bM5OOMmHosHsyCMbWGgn6e8Z1TUl7T8SfF66oM2iBXxtr3+q0yZf4+nO89ItpASjNdO1NAsfqAw6b8CEKadVLLWpDWTibwTAd/d/ghsx7xM598gWY+l9fS8oldvgZP9Q+NgjSRrch+T327j48hiM4zRMQN2Jo+hvdvcJsKtBzgWeyCoHtpUq2znrRMk2QxhEX9aVVDW75R0xAeiu0VWBgJgnNFVHmSvO8s+n+ptnYQBwslUQMnX4Rhq27lHyBP847A/nRb59fOrf7AlTkaFPBtZ1fWQmiOtyK+8viMSsDVq5Ef3FyFivO7JlV1l9VfRxQNXYqe5wq5qg9ADQccMvmJKM3x3ettPtK1xiFMsukg5i3CghoZiAoETc6kw7co9jZO2dN93DdWvfAafWZbVd/fvoCCokoEKTr4K; 4:2xzMcS7m7r8siEFK7wqgmDbKVi/yjFPHUld9Bzpm16pmDvq9eBA//Xq6vqQN/bYy4JIbmRAJlaI3Zo+hf86CQCIg0AdtXe8PBPySKGbFyvPYqbffLkE5aOIKVjeV4rN6CLcejLsZh8cBrnNVH0SoEyWZvbp4HdZdrYRH8A6GWY+Yp3+fIR++J8Ozkq/YY0rDSWxJaa+Fm0JX+X7ikCs/GCtL3hgxTyq+0i29NQ5GKeWqoD/yJ3nIyDIEUlP77rEjuoSNf4tWC7RUJrbWJ4HuXn8JIpZEGzgkXewZrFG8u+urzQ2Esa0Zvi8qDy08f22f X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(788757137089); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040501)(2401047)(8121501046)(5005006)(93006095)(93001095)(3231023)(2400081)(944501161)(10201501046)(3002001)(6055026)(6041288)(20161123560045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123558120)(6072148)(201708071742011); SRVR:DB6PR0501MB2037; BCL:0; PCL:0; RULEID:; SRVR:DB6PR0501MB2037; X-Forefront-PRVS: 0563F2E8B7 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(376002)(366004)(39860400002)(39380400002)(346002)(396003)(199004)(189003)(47776003)(66066001)(21086003)(69596002)(105586002)(106356001)(6116002)(26005)(3846002)(16526019)(478600001)(305945005)(7736002)(1076002)(2950100002)(6666003)(81166006)(8676002)(81156014)(76176011)(386003)(59450400001)(51416003)(52116002)(7696005)(186003)(2906002)(316002)(16586007)(5660300001)(48376002)(50466002)(97736004)(36756003)(53936002)(55016002)(8936002)(50226002)(68736007)(107886003)(4326008)(25786009)(86362001); DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR0501MB2037; H:mellanox.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB6PR0501MB2037; 23:i4payYrZYWiIGm7MRy+9PN6yLKMZimY575H2rCB?= JP1gWwi4HL0my8Z4hy/1NSFJ8+gDjRl7q+IEP3ShMbOEsEXwAoRqIMo4sEyR3CEX1sxdVA542a2GgbBL/k15wWE6C/0TqqzI4ZvhgwCUFNXwrryVC6Gdq2mHUUkhLt30IyIekNQho/XE4ETu+FzdCQ9G/SUwRy5b5TgZ6e0vulVuMbe2dd0pO5mZzPJtqG4Yp1oqUsUYBMB+BVw4t2mpkkHhuYfzZh1xtxjcjSyFsdFioEjSpPgZxa5XeouzrzKMiX82DsmYjkcP0KaC2fLnb7fg4npvbrD09SYRD76lT+Pio7a+FHmeNmUVxh4GzL+dQDm3uyKPgxZVTB/q0k0fa7leUBNsHZ3KPuD+/od8uJTphe+EtrM/eZpoJFmeBchWYFaVLcbckrd4OjQx3Uom+Ia2NA6MCDE+CJCI/O8/cEiwGnpYKa31xufeVJGaL/vEE5Ywv5k3dRNIMURQGad/3F55kowZGCD5DMDX+cD6nq81OAsgMcSMeaFSsAY8w1D1WndhicU8j6mebsX14Rcqdr640E7TcOUg1OJIcl6APdL/FUDDo+KRHaqEPqv4dcwA5UUvfpb9uJHc8P7OxFc3oZT55V3w02wYtSD2r46xuM6B+laTNwicwJHIzLYhBQae+wb56nzQlaNot3y1XFPYfO7MXmEAu0VmU6ffRuDQwOd1xpvUSdmnD7lzF2VlR0GvAdruQoroPi/5/yI0gXlkd14S7HYF9T1TNexXOK9HBKDOvLt7ouLDiTNpxlAZWKQO/tDaThV/GzL3Y6/BsqE3FZbnOriP9e7k84/d4waKqHJuRCjLLCX3cpsDvwm2eCevPHFARl1EUqs9wRrwEDjM73vO4up3y0ilel36c5alyupSDPUHIkUr1UCY4EMDhLXiUU2m5TmiVLPPCeBAjznd6FyHbZO/hqyNuKeWS9N+Hq3a35QmVV6F4AuZ72bLnVbjOknbL1kVLNjHoKUzbk7AGSpfutsCy/SOb4KQZZPAjedTp/h9xSpeog4zREQTQslaxLh91zr5lK2cE38zRrTSbOsXw02iH6iltKczyUv90usCZagHc/j5JQHL2whcQ2s8C5XnMPeIajYTsYB1h33tHA4LXZtEDYFvFA9e48mCUojkvlh66o79WjHKD072VudbgRPg= X-Microsoft-Exchange-Diagnostics: 1; DB6PR0501MB2037; 6:kmOM3CAuqLx/5ZQRpz/kvaF2K9I9McNYJx34C6Xt9bhI9hgoGED9p6mM0saYB9i+BCZJrsiyZrhqQAd+pyIM4HTqU2yYP/PtZ3BlkEVNxf14nTyYNvJYZVbkh/mPJXTPXHZOivVN4oIYJD1qUbQXDjlhhWSJw7kdVoNpB6if9vUc1gxbU536I3m0JTJFoqEtsGlzhN7oed3MdMQRxWbg0ZrbfZ+LQx+Q9grxhuIZ6tnjZ/Zghk3WzOikCamXJVKs1EscyWJKatT5NqNNof03ievZP7c2Pz91oWVLuCRoSJZ5DfEofYa/avlYV1xkQjheyR2YmUiz8UOVJhi4L1T5MXbIC0dQsm1w7zbEhjZBbhc=; 5:qpxJk3IXT9W60UEsBM4MxLtnFtyaASH9Wu89SMcQ/3CrAKXuntFnrTUngV9RdWYPGovtLwH6sOAawC3C2at5ox7EWjtruW1+SMDMqrbX0QnlLw5YTxqvrR4SfRxfRv0iDZl5a3LRSIgNYzwAeejK2BXpIHbHVt8KR8EDUqicsQ0=; 24:SGYhnqHZIdUk6eyU32WMHgS1vA2Izz5CdInZFkJUtJ/+lhR5kURlUAinPfxnyBWuRyeUsE3m0sbuNHTrjBrSxdujw4cJVxyqS/OX4+XLNoM=; 7:zws+VDgV2TUh+z0Cj95620FxKmsqdxWhpeZwcJyjZXeTILilJ9gxxfOq0GqDI1FiNaJU1RNmUeZQOBJm0Ty5e6KoNUReuMBwLGmGhMbFY04WCH4NGylGY0gACkjrNxWUv651WQxSA3uDiwApjHcluR0hxw5VCHssLiXVFPiyaXqZQsE+BxuLcW3VE230bxhFsKXbmuVw/uuaj7vbszIIQckxXXIw7uaO+aD61fjaEksMHansGH1VGeYE/Xpx9Dx0 SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Jan 2018 21:03:24.2874 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0d4f77b0-feda-46da-a3f7-08d5643713c8 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0501MB2037 Subject: [dpdk-dev] [PATCH v4 8/9] net/mlx5: replace I/O memory barrier with coherent version 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" Signed-off-by: Yongseok Koh --- drivers/net/mlx5/mlx5_rxtx.c | 4 ++-- drivers/net/mlx5/mlx5_rxtx.h | 2 +- drivers/net/mlx5/mlx5_rxtx_vec.h | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/net/mlx5/mlx5_rxtx.c b/drivers/net/mlx5/mlx5_rxtx.c index 3b8f71c28..7a24d671d 100644 --- a/drivers/net/mlx5/mlx5_rxtx.c +++ b/drivers/net/mlx5/mlx5_rxtx.c @@ -1898,9 +1898,9 @@ mlx5_rx_burst(void *dpdk_rxq, struct rte_mbuf **pkts, uint16_t pkts_n) return 0; /* Update the consumer index. */ rxq->rq_ci = rq_ci >> sges_n; - rte_io_wmb(); + rte_cio_wmb(); *rxq->cq_db = rte_cpu_to_be_32(rxq->cq_ci); - rte_io_wmb(); + rte_cio_wmb(); *rxq->rq_db = rte_cpu_to_be_32(rxq->rq_ci); #ifdef MLX5_PMD_SOFT_COUNTERS /* Increment packets counter. */ diff --git a/drivers/net/mlx5/mlx5_rxtx.h b/drivers/net/mlx5/mlx5_rxtx.h index d4738b14c..30dfaf359 100644 --- a/drivers/net/mlx5/mlx5_rxtx.h +++ b/drivers/net/mlx5/mlx5_rxtx.h @@ -603,7 +603,7 @@ mlx5_tx_dbrec_cond_wmb(struct mlx5_txq_data *txq, volatile struct mlx5_wqe *wqe, uint64_t *dst = (uint64_t *)((uintptr_t)txq->bf_reg); volatile uint64_t *src = ((volatile uint64_t *)wqe); - rte_io_wmb(); + rte_cio_wmb(); *txq->qp_db = rte_cpu_to_be_32(txq->wqe_ci); /* Ensure ordering between DB record and BF copy. */ rte_wmb(); diff --git a/drivers/net/mlx5/mlx5_rxtx_vec.h b/drivers/net/mlx5/mlx5_rxtx_vec.h index 7d7f016f1..be133a481 100644 --- a/drivers/net/mlx5/mlx5_rxtx_vec.h +++ b/drivers/net/mlx5/mlx5_rxtx_vec.h @@ -135,7 +135,7 @@ mlx5_rx_replenish_bulk_mbuf(struct mlx5_rxq_data *rxq, uint16_t n) elts_idx = rxq->rq_ci & q_mask; for (i = 0; i < MLX5_VPMD_DESCS_PER_LOOP; ++i) (*rxq->elts)[elts_idx + i] = &rxq->fake_mbuf; - rte_io_wmb(); + rte_cio_wmb(); *rxq->rq_db = rte_cpu_to_be_32(rxq->rq_ci); }