From patchwork Sun Jan 6 19:44:00 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heiner Kallweit X-Patchwork-Id: 1021099 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="c+7fp/ud"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 43Xq012lT8z9sBn for ; Mon, 7 Jan 2019 06:51:12 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726061AbfAFToM (ORCPT ); Sun, 6 Jan 2019 14:44:12 -0500 Received: from mail-wm1-f68.google.com ([209.85.128.68]:56269 "EHLO mail-wm1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726045AbfAFToL (ORCPT ); Sun, 6 Jan 2019 14:44:11 -0500 Received: by mail-wm1-f68.google.com with SMTP id y139so5327150wmc.5 for ; Sun, 06 Jan 2019 11:44:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=to:cc:from:subject:message-id:date:user-agent:mime-version :content-language:content-transfer-encoding; bh=pTLeYb/bBwQu18+9b3WkCf4RBb7HsjX6f5oQrGcl6bM=; b=c+7fp/udqK1X9aPtvxZwPKbkjAL8A5qsLs8xUlN45seXmt4D7F9BqTcIfApKDAVdbt 00079vtaW6mVG2YIQ8OnkXrjI1XGPmFAdYiw9Y/CPq9J3pvVLXm1eurgTb4dPO82Gb/H ucVyhZ1PfmzFGpnp9ru75ORzL2pX/OnhonaS10c0vuh2daRl5lTE0s7Py2hKFwap0o8h yJ+GxWg8GYpywNheQvQZrAUfsQe8B2QPrJvLGSE5XZUZjGfSjM3iXeLsGSFaUJ96s7CC JwtDEp+6Gw7WdzndH7gqXcjfUg97uszH6Yu6DSfcDnA9pypseDuQyXsyU5AZ4GhOkLTo NWHQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:to:cc:from:subject:message-id:date:user-agent :mime-version:content-language:content-transfer-encoding; bh=pTLeYb/bBwQu18+9b3WkCf4RBb7HsjX6f5oQrGcl6bM=; b=FdddbF/Xb28RQthJQDvzMND0ncKl1xnhzTUFy+feBN/jpPDqo08LD4ORsoG/5fFXxn irl0JFsRAI6p4lvy5TnknBrNLBf2nGn1E/rgx6KfxUZQR+vULrnmlWNC/ixUDfImSf/4 2zrSxxdVxzvypK6UvwreuLG0f3wzaBhfvrKkoeRuthQX2oaUd4kR5ErTE2bMmA7NVlKM yYgQ3fx7WY3dIYO2LQCcLX1mbpDeNTR0pHI9Fgl4kBYd2vqSEfKwbLL4pV2pTuaFEQT0 nwIWOKVqIbjqHqpF234fqf3unmyRdKJIh4fREjt/KqgACELXK1gId5qP4QDdKQPHERuH mYWA== X-Gm-Message-State: AJcUukfN3Y2q1zlWK2qIdLZhCo7juGJaxItmXYzDbvwwcoMd/gEBkoYf CtPBABr5MMkJ+y9wIABzR1P1gY8p X-Google-Smtp-Source: ALg8bN77GarCN5ZoHk7FwXvSKD252sxfl+CkdvRohUC9DNkomiS5iC3E9iEh6oFZa7g9B0ZkeEF3Dw== X-Received: by 2002:a1c:27c6:: with SMTP id n189mr6652222wmn.108.1546803849439; Sun, 06 Jan 2019 11:44:09 -0800 (PST) Received: from ?IPv6:2003:ea:8be6:dd00:655d:d0bb:b40c:7b0a? (p200300EA8BE6DD00655DD0BBB40C7B0A.dip0.t-ipconnect.de. [2003:ea:8be6:dd00:655d:d0bb:b40c:7b0a]) by smtp.googlemail.com with ESMTPSA id w12sm46274714wrr.23.2019.01.06.11.44.08 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 06 Jan 2019 11:44:08 -0800 (PST) To: David Miller , Realtek linux nic maintainers Cc: "netdev@vger.kernel.org" From: Heiner Kallweit Subject: [PATCH net] r8169: don't try to read counters if chip is in a PCI power-save state Message-ID: Date: Sun, 6 Jan 2019 20:44:00 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0 MIME-Version: 1.0 Content-Language: en-US Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Avoid log spam caused by trying to read counters from the chip whilst it is in a PCI power-save state. Reference: https://bugzilla.kernel.org/show_bug.cgi?id=107421 Fixes: 1ef7286e7f36 ("r8169: Dereference MMIO address immediately before use") Signed-off-by: Heiner Kallweit --- drivers/net/ethernet/realtek/r8169.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/net/ethernet/realtek/r8169.c b/drivers/net/ethernet/realtek/r8169.c index c6b98024b..8265c1824 100644 --- a/drivers/net/ethernet/realtek/r8169.c +++ b/drivers/net/ethernet/realtek/r8169.c @@ -1682,11 +1682,13 @@ static bool rtl8169_reset_counters(struct rtl8169_private *tp) static bool rtl8169_update_counters(struct rtl8169_private *tp) { + u8 val = RTL_R8(tp, ChipCmd); + /* * Some chips are unable to dump tally counters when the receiver - * is disabled. + * is disabled. If 0xff chip may be in a PCI power-save state. */ - if ((RTL_R8(tp, ChipCmd) & CmdRxEnb) == 0) + if (!(val & CmdRxEnb) || val == 0xff) return true; return rtl8169_do_counters(tp, CounterDump);