From patchwork Tue Mar 20 02:47:48 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sinan Kaya X-Patchwork-Id: 10296181 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 3D480602BD for ; Tue, 20 Mar 2018 03:11:36 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 2BD78291E3 for ; Tue, 20 Mar 2018 03:11:36 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 204462920A; Tue, 20 Mar 2018 03:11:36 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID autolearn=ham version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 85A32291E3 for ; Tue, 20 Mar 2018 03:11:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=tA8EA4HG3y4Pca0ZGP0AnDd85N1nBk77n58cmIXsopI=; b=N2G7gKP4U/QltN x/wvgZeWYxIMwrYzrLZsDr2rHVGrn+tXEIEnCd/SpK2grMvOfHc3GB60vu+jo/zIYDMQzuyLH1Jz/ vMY6Xj2/pvkrUER/+m1bijrPnXSnknPS6UOeJM5nkCvQRGKj75DcQBBW+m0nXmo0ZF99gwqx98n7c F7J7VrM2D372y6ish2lGG52CzbFUiVazukp/PzGeWsLUjf/xYkRH5V42ITlgvk/sCKlYkSWmGRn2g nNKuGNI1HSuvp2JztoTzj58o6sd0X1d3q/KUxYE4AC+7iat/E4lN4M28XN8yTWL32gz44GlA8Lfex PudxyesGqKgIwBlUTdgw==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1ey7gQ-00035K-AJ; Tue, 20 Mar 2018 03:11:30 +0000 Received: from merlin.infradead.org ([2001:8b0:10b:1231::1]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1ey7ep-0001B2-Lo for linux-arm-kernel@bombadil.infradead.org; Tue, 20 Mar 2018 03:09:51 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=merlin.20170209; h=Content-Transfer-Encoding:MIME-Version: References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender:Reply-To: Content-Type:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help: List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=vKLamPUBOF8MkYgBCd75PxtqFvPYsoYa3EO4U/vFicY=; b=tIjHquAGw6PyUNZYAgb/xGxgPs SGbn4jPMBZjAywAUnMW+F6/Ut7WDcPcANTFGNq20q+4MipckD/oKq4RzyvKN/EQJ/CXxk4kfr1VnU l1hKjKT2wEW5wp0wH9iYGQJmz6/7BOcJTqscMK/mzIebZZrQDSLrUV4yZTU4C+Y/269+grDY8m+Nd Wt1NuMxbb84nDdvFGLZruL8RqntWrC4p/FdUSp8z1QP9i+3XfRYOT9UEUNOQd2ruPsgGbXGAStPwx mSy37fun2eCl0so2A0vTjtaneHOcVKRH9DkkqdgVGPsiBNngPpCELLdGO8vF4uoWErL8TxTYNtqea CegJtDGg==; Received: from smtp.codeaurora.org ([198.145.29.96]) by merlin.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1ey7Ju-0002Dq-92 for linux-arm-kernel@lists.infradead.org; Tue, 20 Mar 2018 02:48:15 +0000 Received: by smtp.codeaurora.org (Postfix, from userid 1000) id B1D1360FEE; Tue, 20 Mar 2018 02:48:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1521514085; bh=wKf1QocbWcihnWVgJtjvqdqWapBnp5hXTUOiu4NtFuw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=k3so3hhieVCootMTYJqlvGrB3HiahxbTYr8SZpJrWetWdMO01BYPlKU6iGqB828RW T+sppT/TFW6NhQAFqb7mkd4nEvm8xroDL31g4MVEnuktTrPsldGu1K9STsTgC9de4R A10jm/okfnQfT8GYQqQd3XlkfbWFOQqD1wnyIGRs= Received: from drakthul.qualcomm.com (global_nat1_iad_fw.qualcomm.com [129.46.232.65]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: okaya@smtp.codeaurora.org) by smtp.codeaurora.org (Postfix) with ESMTPSA id 7275F60C54; Tue, 20 Mar 2018 02:48:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1521514084; bh=wKf1QocbWcihnWVgJtjvqdqWapBnp5hXTUOiu4NtFuw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=QwVALWRtsowQNwABEoWEb+r+vLGByvQFyV/2uD5tIUTEigO7szxpcsRvz82XVGrYc SbJgHhiQRnTFAnNDxghhEtAcaSMOXlO7d6rGC65znuZb8RyYGk5+WlLBgwafdNJcT0 gVUB2Td8931zj32TmOtCDDSGZGHX9pnQ3m+j96Zk= DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org 7275F60C54 Authentication-Results: pdx-caf-mail.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: pdx-caf-mail.web.codeaurora.org; spf=none smtp.mailfrom=okaya@codeaurora.org From: Sinan Kaya To: linux-rdma@vger.kernel.org, timur@codeaurora.org, sulrich@codeaurora.org Subject: [PATCH v4 6/6] RDMA/qedr: eliminate duplicate barriers on weakly-ordered archs #2 Date: Mon, 19 Mar 2018 22:47:48 -0400 Message-Id: <1521514068-8856-7-git-send-email-okaya@codeaurora.org> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1521514068-8856-1-git-send-email-okaya@codeaurora.org> References: <1521514068-8856-1-git-send-email-okaya@codeaurora.org> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20180319_224814_413332_51BC9D17 X-CRM114-Status: GOOD ( 13.21 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-arm-msm@vger.kernel.org, Doug Ledford , Michal Kalderon , linux-kernel@vger.kernel.org, Sinan Kaya , Jason Gunthorpe , Ariel Elior , linux-arm-kernel@lists.infradead.org Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP Code includes wmb() followed by writel() in multiple places. writel() already has a barrier on some architectures like arm64. This ends up CPU observing two barriers back to back before executing the register write. Since code already has an explicit barrier call, changing writel() to writel_relaxed(). Signed-off-by: Sinan Kaya Acked-by: Michal Kalderon --- drivers/infiniband/hw/qedr/verbs.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/infiniband/hw/qedr/verbs.c b/drivers/infiniband/hw/qedr/verbs.c index ccd55f4..db60360 100644 --- a/drivers/infiniband/hw/qedr/verbs.c +++ b/drivers/infiniband/hw/qedr/verbs.c @@ -860,7 +860,7 @@ static void doorbell_cq(struct qedr_cq *cq, u32 cons, u8 flags) wmb(); cq->db.data.agg_flags = flags; cq->db.data.value = cpu_to_le32(cons); - writeq(cq->db.raw, cq->db_addr); + writeq_relaxed(cq->db.raw, cq->db_addr); /* Make sure write would stick */ mmiowb(); @@ -3338,7 +3338,7 @@ int qedr_post_recv(struct ib_qp *ibqp, struct ib_recv_wr *wr, qp->rq.db_data.data.value++; - writel(qp->rq.db_data.raw, qp->rq.db); + writel_relaxed(qp->rq.db_data.raw, qp->rq.db); /* Make sure write sticks */ mmiowb();