From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: Breno Leitao <leitao@debian.org>,
Michael van der Westhuizen <rmikey@meta.com>,
Jakub Kicinski <kuba@kernel.org>, Sasha Levin <sashal@kernel.org>,
davem@davemloft.net, edumazet@google.com, pabeni@redhat.com,
wsa+renesas@sang-engineering.com, netdev@vger.kernel.org
Subject: [PATCH AUTOSEL 5.10 17/27] netpoll: Remove 4s sleep during carrier detection
Date: Sun, 26 Feb 2023 09:50:04 -0500 [thread overview]
Message-ID: <20230226145014.828855-17-sashal@kernel.org> (raw)
In-Reply-To: <20230226145014.828855-1-sashal@kernel.org>
From: Breno Leitao <leitao@debian.org>
[ Upstream commit d8afe2f8a92d2aac3df645772f6ee61b0b2fc147 ]
This patch removes the msleep(4s) during netpoll_setup() if the carrier
appears instantly.
Here are some scenarios where this workaround is counter-productive in
modern ages:
Servers which have BMC communicating over NC-SI via the same NIC as gets
used for netconsole. BMC will keep the PHY up, hence the carrier
appearing instantly.
The link is fibre, SERDES getting sync could happen within 0.1Hz, and
the carrier also appears instantly.
Other than that, if a driver is reporting instant carrier and then
losing it, this is probably a driver bug.
Reported-by: Michael van der Westhuizen <rmikey@meta.com>
Signed-off-by: Breno Leitao <leitao@debian.org>
Link: https://lore.kernel.org/r/20230125185230.3574681-1-leitao@debian.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
net/core/netpoll.c | 12 +-----------
1 file changed, 1 insertion(+), 11 deletions(-)
diff --git a/net/core/netpoll.c b/net/core/netpoll.c
index 960948290001e..ee2022b9616bf 100644
--- a/net/core/netpoll.c
+++ b/net/core/netpoll.c
@@ -694,7 +694,7 @@ int netpoll_setup(struct netpoll *np)
}
if (!netif_running(ndev)) {
- unsigned long atmost, atleast;
+ unsigned long atmost;
np_info(np, "device %s not up yet, forcing it\n", np->dev_name);
@@ -706,7 +706,6 @@ int netpoll_setup(struct netpoll *np)
}
rtnl_unlock();
- atleast = jiffies + HZ/10;
atmost = jiffies + carrier_timeout * HZ;
while (!netif_carrier_ok(ndev)) {
if (time_after(jiffies, atmost)) {
@@ -716,15 +715,6 @@ int netpoll_setup(struct netpoll *np)
msleep(1);
}
- /* If carrier appears to come up instantly, we don't
- * trust it and pause so that we don't pump all our
- * queued console messages into the bitbucket.
- */
-
- if (time_before(jiffies, atleast)) {
- np_notice(np, "carrier detect appears untrustworthy, waiting 4 seconds\n");
- msleep(4000);
- }
rtnl_lock();
}
--
2.39.0
next prev parent reply other threads:[~2023-02-26 15:28 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-26 14:49 [PATCH AUTOSEL 5.10 01/27] wifi: ath9k: Fix use-after-free in ath9k_hif_usb_disconnect() Sasha Levin
2023-02-26 14:49 ` [PATCH AUTOSEL 5.10 02/27] wifi: brcmfmac: Fix potential stack-out-of-bounds in brcmf_c_preinit_dcmds() Sasha Levin
2023-02-26 14:49 ` [PATCH AUTOSEL 5.10 03/27] rcu: Make RCU_LOCKDEP_WARN() avoid early lockdep checks Sasha Levin
2023-02-26 14:49 ` [PATCH AUTOSEL 5.10 04/27] rcu: Suppress smp_processor_id() complaint in synchronize_rcu_expedited_wait() Sasha Levin
2023-02-26 14:49 ` [PATCH AUTOSEL 5.10 05/27] rcu-tasks: Make rude RCU-Tasks work well with CPU hotplug Sasha Levin
2023-02-26 14:49 ` [PATCH AUTOSEL 5.10 06/27] wifi: ath11k: debugfs: fix to work with multiple PCI devices Sasha Levin
2023-02-26 14:49 ` [PATCH AUTOSEL 5.10 07/27] thermal: intel: Fix unsigned comparison with less than zero Sasha Levin
2023-02-26 14:49 ` [PATCH AUTOSEL 5.10 08/27] timers: Prevent union confusion from unexpected restart_syscall() Sasha Levin
2023-02-26 14:49 ` [PATCH AUTOSEL 5.10 09/27] x86/bugs: Reset speculation control settings on init Sasha Levin
2023-02-26 14:49 ` [PATCH AUTOSEL 5.10 10/27] wifi: brcmfmac: ensure CLM version is null-terminated to prevent stack-out-of-bounds Sasha Levin
2023-02-26 14:49 ` [PATCH AUTOSEL 5.10 11/27] wifi: mt7601u: fix an integer underflow Sasha Levin
2023-02-26 14:49 ` [PATCH AUTOSEL 5.10 12/27] inet: fix fast path in __inet_hash_connect() Sasha Levin
2023-02-26 14:50 ` [PATCH AUTOSEL 5.10 13/27] ice: add missing checks for PF vsi type Sasha Levin
2023-02-26 14:50 ` [PATCH AUTOSEL 5.10 14/27] ACPI: Don't build ACPICA with '-Os' Sasha Levin
2023-02-26 14:50 ` [PATCH AUTOSEL 5.10 15/27] clocksource: Suspend the watchdog temporarily when high read latency detected Sasha Levin
2023-02-26 14:50 ` [PATCH AUTOSEL 5.10 16/27] crypto: hisilicon: Wipe entire pool on error Sasha Levin
2023-02-26 14:50 ` Sasha Levin [this message]
2023-02-26 14:50 ` [PATCH AUTOSEL 5.10 18/27] net: bcmgenet: Add a check for oversized packets Sasha Levin
2023-02-26 14:50 ` [PATCH AUTOSEL 5.10 19/27] m68k: Check syscall_trace_enter() return code Sasha Levin
2023-02-26 14:50 ` [PATCH AUTOSEL 5.10 20/27] wifi: mt76: dma: free rx_head in mt76_dma_rx_cleanup Sasha Levin
2023-02-26 14:50 ` [PATCH AUTOSEL 5.10 21/27] ACPI: video: Fix Lenovo Ideapad Z570 DMI match Sasha Levin
2023-02-26 14:50 ` [PATCH AUTOSEL 5.10 22/27] net/mlx5: fw_tracer: Fix debug print Sasha Levin
2023-02-26 14:50 ` [PATCH AUTOSEL 5.10 23/27] coda: Avoid partial allocation of sig_inputArgs Sasha Levin
2023-02-26 14:50 ` [PATCH AUTOSEL 5.10 24/27] uaccess: Add minimum bounds check on kernel buffer size Sasha Levin
2023-02-26 14:50 ` [PATCH AUTOSEL 5.10 25/27] PM: EM: fix memory leak with using debugfs_lookup() Sasha Levin
2023-02-26 14:50 ` [PATCH AUTOSEL 5.10 26/27] Bluetooth: btusb: Add VID:PID 13d3:3529 for Realtek RTL8821CE Sasha Levin
2023-02-26 14:50 ` [PATCH AUTOSEL 5.10 27/27] devlink: health: Fix nla_nest_end in error flow Sasha Levin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230226145014.828855-17-sashal@kernel.org \
--to=sashal@kernel.org \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=kuba@kernel.org \
--cc=leitao@debian.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=rmikey@meta.com \
--cc=stable@vger.kernel.org \
--cc=wsa+renesas@sang-engineering.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).