Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp3883457pxb; Tue, 2 Mar 2021 00:36:59 -0800 (PST) X-Google-Smtp-Source: ABdhPJy69gWY9+cHsxlbGgZGBAXMLSJMgXgdo3XnsD9zVenr9x4afXS1+D5ua8wXbYEIPYjujkjd X-Received: by 2002:a50:ff0d:: with SMTP id a13mr19330058edu.321.1614674219574; Tue, 02 Mar 2021 00:36:59 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1614674219; cv=none; d=google.com; s=arc-20160816; b=pPdPjR6I4wXHS/KYzZcedRjv6rwmQwsTRZdBWzQjTJsGs0IGLHeJD809DtTnuXyxPh 4cxJl3QLLvPeaATlw3j0A2WPajI7JOs0RE+HSwWA1ZOqK6IGTaiTBj4xk8HTcjRvIppG ESXjjYU5UNyJ413dueZUMSNggK0TFK+mldVBElvtW5j3+uzlAVKzQ198cEwcelZkegfi QNhQC/fUhO5cjOgbKTrHr/o2h9RmNPeFFeZrjoc+c6yHVM5EIvMekgbF2BrsHdDaPuY0 HIjA9z1JZREWjvw4SZiQ2BJWrj3LenKHK4MCd9hDj4u1hfWQMTu0uONnyE5DLwDZ0M3w bXoQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=4YxYWLnGSWCKPIi3Hra/Vejw0ERQ0w3dBY733uMgJ1Q=; b=sr0voQ9uSd9BDR1TmQmxkUByc53vbCFqyZMz9V1z1dts7bt7w9rcR2UfRW7pbHlIRL wePkx+8wlGWGaEDVUxbMIClYmsXdMiXp0dHDBwMqtHEttn3K+SvRIdthfTMm1GLdqVTR a2H7xXxpO2OmIU7RNJPAs0xVK6jxNE8sKQB76ZyqOOS+6u60HcwVnoSu7CNvLWj8kz5Z VMP0kmtufKWFawMjhE14Sv4d2nlzN6SzaIZLUQ6TkU3bCXDC383NUYSi0qyLCMUpubK/ xwFy33cbcyHCu7F3O4SoH+/CeLFYcHMKKjoUGNkBtdShVuF4uLjejvOgTcQPgGwPYl9I KkWw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=GS0Re8PF; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id z19si13075196edr.437.2021.03.02.00.36.27; Tue, 02 Mar 2021 00:36:59 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=GS0Re8PF; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1378435AbhCBBGH (ORCPT + 99 others); Mon, 1 Mar 2021 20:06:07 -0500 Received: from mail.kernel.org ([198.145.29.99]:34078 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240815AbhCATBG (ORCPT ); Mon, 1 Mar 2021 14:01:06 -0500 Received: by mail.kernel.org (Postfix) with ESMTPSA id 4D25A65189; Mon, 1 Mar 2021 17:10:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1614618630; bh=hF0Z2ImeDhMsG9CfI2pxm99ZtROhX7KaIIFYm6QhRvA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=GS0Re8PFqU2E6NVlix8KheM2rXl7C7Kkr9KCKrYLO2+VOTJnau8+fwN04sFu0CeiE 2FrHOucTyPV1uO/WIvG5IccefR/Caxk0oHLEZuBB2c/zL6xWcYBXpLMBklBkuJ5868 KMAFu0C4iiPuz6/cnS+QjIfOWrGj7ZmOLCmivkI0= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Sudheesh Mavila , Shyam Sundar S K , Tom Lendacky , "David S. Miller" , Sasha Levin Subject: [PATCH 5.10 131/663] net: amd-xgbe: Fix NETDEV WATCHDOG transmit queue timeout warning Date: Mon, 1 Mar 2021 17:06:19 +0100 Message-Id: <20210301161148.231188202@linuxfoundation.org> X-Mailer: git-send-email 2.30.1 In-Reply-To: <20210301161141.760350206@linuxfoundation.org> References: <20210301161141.760350206@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Shyam Sundar S K [ Upstream commit 186edbb510bd60e748f93975989ccba25ee99c50 ] The current driver calls netif_carrier_off() late in the link tear down which can result in a netdev watchdog timeout. Calling netif_carrier_off() immediately after netif_tx_stop_all_queues() avoids the warning. ------------[ cut here ]------------ NETDEV WATCHDOG: enp3s0f2 (amd-xgbe): transmit queue 0 timed out WARNING: CPU: 3 PID: 0 at net/sched/sch_generic.c:461 dev_watchdog+0x20d/0x220 Modules linked in: amd_xgbe(E) amd-xgbe 0000:03:00.2 enp3s0f2: Link is Down CPU: 3 PID: 0 Comm: swapper/3 Tainted: G E Hardware name: AMD Bilby-RV2/Bilby-RV2, BIOS RBB1202A 10/18/2019 RIP: 0010:dev_watchdog+0x20d/0x220 Code: 00 49 63 4e e0 eb 92 4c 89 e7 c6 05 c6 e2 c1 00 01 e8 e7 ce fc ff 89 d9 48 RSP: 0018:ffff90cfc28c3e88 EFLAGS: 00010286 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000006 RDX: 0000000000000007 RSI: 0000000000000086 RDI: ffff90cfc28d63c0 RBP: ffff90cfb977845c R08: 0000000000000050 R09: 0000000000196018 R10: ffff90cfc28c3ef8 R11: 0000000000000000 R12: ffff90cfb9778000 R13: 0000000000000003 R14: ffff90cfb9778480 R15: 0000000000000010 FS: 0000000000000000(0000) GS:ffff90cfc28c0000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f240ff2d9d0 CR3: 00000001e3e0a000 CR4: 00000000003406e0 Call Trace: ? pfifo_fast_reset+0x100/0x100 call_timer_fn+0x2b/0x130 run_timer_softirq+0x3e8/0x440 ? enqueue_hrtimer+0x39/0x90 Fixes: e722ec82374b ("amd-xgbe: Update the BelFuse quirk to support SGMII") Co-developed-by: Sudheesh Mavila Signed-off-by: Sudheesh Mavila Signed-off-by: Shyam Sundar S K Acked-by: Tom Lendacky Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- drivers/net/ethernet/amd/xgbe/xgbe-drv.c | 1 + drivers/net/ethernet/amd/xgbe/xgbe-mdio.c | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/ethernet/amd/xgbe/xgbe-drv.c b/drivers/net/ethernet/amd/xgbe/xgbe-drv.c index 2709a2db56577..395eb0b526802 100644 --- a/drivers/net/ethernet/amd/xgbe/xgbe-drv.c +++ b/drivers/net/ethernet/amd/xgbe/xgbe-drv.c @@ -1368,6 +1368,7 @@ static void xgbe_stop(struct xgbe_prv_data *pdata) return; netif_tx_stop_all_queues(netdev); + netif_carrier_off(pdata->netdev); xgbe_stop_timers(pdata); flush_workqueue(pdata->dev_workqueue); diff --git a/drivers/net/ethernet/amd/xgbe/xgbe-mdio.c b/drivers/net/ethernet/amd/xgbe/xgbe-mdio.c index 93ef5a30cb8d9..19ee4db0156d6 100644 --- a/drivers/net/ethernet/amd/xgbe/xgbe-mdio.c +++ b/drivers/net/ethernet/amd/xgbe/xgbe-mdio.c @@ -1396,7 +1396,6 @@ static void xgbe_phy_stop(struct xgbe_prv_data *pdata) pdata->phy_if.phy_impl.stop(pdata); pdata->phy.link = 0; - netif_carrier_off(pdata->netdev); xgbe_phy_adjust_link(pdata); } -- 2.27.0