Received: by 10.213.65.68 with SMTP id h4csp64925imn; Mon, 19 Mar 2018 19:47:59 -0700 (PDT) X-Google-Smtp-Source: AG47ELuSd7Xu7MNAtyS26ZS5LdRUsIGTqH8Yd/PUZ07hq3GLrL3rQW/mC3MYTuHlRsXlAeXUsNa5 X-Received: by 10.101.64.197 with SMTP id u5mr10989724pgp.23.1521514079873; Mon, 19 Mar 2018 19:47:59 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1521514079; cv=none; d=google.com; s=arc-20160816; b=NhRAF3qNeIfBRB+dfDr9ZAHmUOmWSJIT/aa+BNROR4tCTWbK+DrCbmG6nwjhIEzBzM /ndCDUBt/BL5CL2W/GYweJx9bGdDxx+J6WAj8P8JRF+nV2t57aOgFO1TQtK6xfpFMqAR HgEDwlqXVN53V/HhLKfkNXzZ2ezAyaXfBF2/Cm7y7cDIDc4gQ7ttBtYvNkEkr4DoFllf mTg64EoY8hWEu+jsGX7qlw1z7FKX82JIrWAnV4D6xVfdKD15+5HWQn93ukS81h1KWZ6E zzAoWJACV18XkSC/0kr6cJXL5rsKq6BbvzqHhERD9rgc7RtNLvCU2HstZf7vRHliZLH+ BNnw== 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=zbEYjhm2grqIIELnyiF7MX0yUFyJTuQI4B/IbXRgRyI=; b=ODtA8CxKSGK6rXPwaNX3Ba+Ot1sz/eFKiOjBG5ks4d5CzmM3c/6vfWQsKkVFzBaoJg r/nAHXlOFhAFLPNZvR9ltl79xZn73YryBb20oTy5tKCvT8VpH306AJzyAoP3GMcYYgwB vYkHn1oHkDOTanlo8161lpwWgy97GzSFsJqO3hN6/dKZ6wZ1Rj7baruqFNMLPWzUdmZ/ q3enJnJSxzVHtH4tHABcQAVLA7reZTTDZJLLxXu46JqfH3c0SVrAa9Gwc5iP02b96dg9 PSApiXM7UKIk3rsw0AgiCmef0yvnhNbWiT/g6bWaqHWpbjKijtNGL/cenDJJnGA95HUF BdEA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@codeaurora.org header.s=default header.b=Et96U2gV; dkim=pass header.i=@codeaurora.org header.s=default header.b=lJh5ObWC; 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 n20-v6si562944plp.561.2018.03.19.19.47.36; Mon, 19 Mar 2018 19:47:59 -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=Et96U2gV; dkim=pass header.i=@codeaurora.org header.s=default header.b=lJh5ObWC; 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 S1751866AbeCTCnE (ORCPT + 99 others); Mon, 19 Mar 2018 22:43:04 -0400 Received: from smtp.codeaurora.org ([198.145.29.96]:42036 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751659AbeCTCmo (ORCPT ); Mon, 19 Mar 2018 22:42:44 -0400 Received: by smtp.codeaurora.org (Postfix, from userid 1000) id 14A0860F5C; Tue, 20 Mar 2018 02:42:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1521513764; bh=+bI0tm8bhHIDFysh3wegWVamtyhDD/7eP9KsoC1eST4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Et96U2gVKKM9aZETnXYD1zuiDhTsAiXwqZsA7AAWqp7G5KrAQDPyHGIV+3JSFPsvg Jlrv8JLkAaL2k1QDSrvGBbjOix5Q40gYzdSpqIVuF1+NL2Of6Myg5N/le5zG/6QK06 zT8ehB1027YYJvwWcBRmZ/BtPR5VN5QrGEvOJevE= 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 BAE2160C5F; Tue, 20 Mar 2018 02:42:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1521513763; bh=+bI0tm8bhHIDFysh3wegWVamtyhDD/7eP9KsoC1eST4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=lJh5ObWC9nKM9l7NIQTYHLvRdsT86CEv7TVb+eMvqdMSvN+KZzrP2qXvCtpdACqKp W21gIMCwhb1SPqxYmRu2w+MvENR8/CKa7e93cHGfLXXkBeM+UMD1/g1iBqVOjEGa+O cqlVOJ4sdR2i3EBBUVLosvyw4S5nIZ8lK5lFkTO0= DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org BAE2160C5F 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: netdev@vger.kernel.org, timur@codeaurora.org, sulrich@codeaurora.org Cc: linux-arm-msm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Sinan Kaya , Jeff Kirsher , intel-wired-lan@lists.osuosl.org, linux-kernel@vger.kernel.org Subject: [PATCH v4 04/17] igb: eliminate duplicate barriers on weakly-ordered archs Date: Mon, 19 Mar 2018 22:42:19 -0400 Message-Id: <1521513753-7325-5-git-send-email-okaya@codeaurora.org> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1521513753-7325-1-git-send-email-okaya@codeaurora.org> References: <1521513753-7325-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 Reviewed-by: Alexander Duyck --- drivers/net/ethernet/intel/igb/igb_main.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethernet/intel/igb/igb_main.c index b88fae7..82aea92 100644 --- a/drivers/net/ethernet/intel/igb/igb_main.c +++ b/drivers/net/ethernet/intel/igb/igb_main.c @@ -5671,7 +5671,7 @@ static int igb_tx_map(struct igb_ring *tx_ring, igb_maybe_stop_tx(tx_ring, DESC_NEEDED); 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 @@ -8072,7 +8072,7 @@ void igb_alloc_rx_buffers(struct igb_ring *rx_ring, u16 cleaned_count) * such as IA-64). */ wmb(); - writel(i, rx_ring->tail); + writel_relaxed(i, rx_ring->tail); } } -- 2.7.4