Received: by 10.213.65.68 with SMTP id h4csp43723imn; Wed, 21 Mar 2018 11:58:10 -0700 (PDT) X-Google-Smtp-Source: AG47ELu2VxV98mzUZgKGHGZe0moLWMovOJAOoT/ZrvWq55vwcWBIx0MUIqpdG6wlfBfS/Esgh3dR X-Received: by 10.99.107.195 with SMTP id g186mr15589076pgc.91.1521658690148; Wed, 21 Mar 2018 11:58:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1521658690; cv=none; d=google.com; s=arc-20160816; b=dh1c5h8YUF2PBnZvtB7Xj65OnONufJ2DwEwPdN1txLpvEAlaClu5nRtb2210igZtGm BqARwzO6CeAWwLXUaIbCuxw1pxa5j+L44f7BLozOzWrKRw8w5zdzEWIlsmmLeabxOUrY vbv6R5YxP615UEBda902Xwf3MA1K8WjwvjfrBJlldRALaGrEDxuJB3w5wc4prX7gC7ZQ nXvMypSdMAhMJ939oZy5hJX8FgvNWBv8aOXKTrd6VapVHYpD6bD4etv8DP6Gg2fzqBmh zfaPcP+MQ45AFjhn+X4S5AaFT5oUI1m98jXcrfB58HaHhsRx5fNaDE3fEfeC9fzri1bu DAPQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dmarc-filter:dkim-signature:dkim-signature :arc-authentication-results; bh=f6o9N8ovv7fVhlhMxmzbF665IRyM37d2a2GNL1MszKQ=; b=SDx4msFeZM6tB0ltF5PU30wFCRTTCeQOGXQ1Qz8l0vJKTn16bpRv36voFfO/3t90fR 2d1UPKaVGjvkSmvj2OxvtUIl1XIHKQ8sZlWqzISiEaYX64UWhs7OMCZJFpyRyNyvw/lu Hv4VQThAv1/V/2i88fELUYZq5DqRfWh+IssxWDgDFpgSEY4v29ZLxc+baq4pUO6+wp85 bfYzCX9Sc1QRtpA27UrKtY5GFM1wDNUJs9SpAK7uJp89s6rBIl98Z2Mo9uPmA2l543kh bXYkWo0/eBeyRb+q0IidYyxAIqidxKlqJK1GUVexg+4oox0jBxk2aKXMZu7OjA9/uN0p yw/w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@codeaurora.org header.s=default header.b=UliSPbL1; dkim=pass header.i=@codeaurora.org header.s=default header.b=lyb0z9Xt; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id i71si3065553pgc.718.2018.03.21.11.57.52; Wed, 21 Mar 2018 11:58:10 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@codeaurora.org header.s=default header.b=UliSPbL1; dkim=pass header.i=@codeaurora.org header.s=default header.b=lyb0z9Xt; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753158AbeCUS4n (ORCPT + 99 others); Wed, 21 Mar 2018 14:56:43 -0400 Received: from smtp.codeaurora.org ([198.145.29.96]:59186 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752783AbeCUS4c (ORCPT ); Wed, 21 Mar 2018 14:56:32 -0400 Received: by smtp.codeaurora.org (Postfix, from userid 1000) id B637360FF0; Wed, 21 Mar 2018 18:56:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1521658592; bh=BP2NEOOSikWKnKxDi5MbxXs30YOknO4W7TIZoKbCnPE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=UliSPbL14v5wT536ehM6InVqZ/fky+RbCNhSq9dTHb6fbYiv5fJ55fVelnmnCaVbF UXozjNJr+1Rj//NUX0jeGdTO3RmORnmEYW3V3s+xJu62GGn/rwufBXhA2O6v6rSIeo pTZrTtUxkFv0QFKoJspZ6HAMgs0ilb/7hpq1ynRk= X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on pdx-caf-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.8 required=2.0 tests=ALL_TRUSTED,BAYES_00, DKIM_SIGNED,T_DKIM_INVALID autolearn=no autolearn_force=no version=3.4.0 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 DBBD760FEB; Wed, 21 Mar 2018 18:56:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1521658591; bh=BP2NEOOSikWKnKxDi5MbxXs30YOknO4W7TIZoKbCnPE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=lyb0z9XtIDzAdYvp668Y+jd5cXbawBx5ykdsuJhscZI3/HMpuIbq9rPXxKleBQRPZ QwbLyThS5JEMbLIHwO179azmuWG4ZTtby6TGpWZsfrNaD9P/YJQP18HRjhLuhTLrb7 U5VJm+CqU/oAxxCXJuZN+l39wX6Z9P7x0Z9Yz7g0= DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org DBBD760FEB 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: jeffrey.t.kirsher@intel.com Cc: netdev@vger.kernel.org, timur@codeaurora.org, sulrich@codeaurora.org, linux-arm-msm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Sinan Kaya , intel-wired-lan@lists.osuosl.org, linux-kernel@vger.kernel.org Subject: [PATCH REPOST v4 7/7] fm10k: Eliminate duplicate barriers on weakly-ordered archs Date: Wed, 21 Mar 2018 14:56:11 -0400 Message-Id: <1521658572-26354-8-git-send-email-okaya@codeaurora.org> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1521658572-26354-1-git-send-email-okaya@codeaurora.org> References: <1521658572-26354-1-git-send-email-okaya@codeaurora.org> MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Code includes wmb() followed by writel(). 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 --- drivers/net/ethernet/intel/fm10k/fm10k_main.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/ethernet/intel/fm10k/fm10k_main.c b/drivers/net/ethernet/intel/fm10k/fm10k_main.c index 8e12aae..eebef01 100644 --- a/drivers/net/ethernet/intel/fm10k/fm10k_main.c +++ b/drivers/net/ethernet/intel/fm10k/fm10k_main.c @@ -179,7 +179,7 @@ void fm10k_alloc_rx_buffers(struct fm10k_ring *rx_ring, u16 cleaned_count) wmb(); /* notify hardware of new descriptors */ - writel(i, rx_ring->tail); + writel_relaxed(i, rx_ring->tail); } } @@ -1054,7 +1054,7 @@ static void fm10k_tx_map(struct fm10k_ring *tx_ring, /* notify HW of packet */ if (netif_xmit_stopped(txring_txq(tx_ring)) || !skb->xmit_more) { - writel(i, tx_ring->tail); + writel_relaxed(i, tx_ring->tail); /* we need this if more than one processor can write to our tail * at a time, it synchronizes IO on IA64/Altix systems -- 2.7.4