[X/B/F/G/H/Unstable][SRU][PATCH 1/1] net: napi: remove useless stack trace

Po-Hsu Lin po-hsu.lin at canonical.com
Fri Nov 27 11:47:45 UTC 2020


From: Eric Dumazet <edumazet at google.com>

BugLink: https://bugs.launchpad.net/bugs/1903596

Whenever a buggy NAPI driver returns more than its budget,
we emit a stack trace that is of no use, since it does not
tell which driver is buggy.

Instead, emit a message giving the function name, and a
descriptive message.

Signed-off-by: Eric Dumazet <edumazet at google.com>
Signed-off-by: David S. Miller <davem at davemloft.net>
(cherry picked from commit 427d5838e99632e9218eae752009c873cade89ac)
Signed-off-by: Po-Hsu Lin <po-hsu.lin at canonical.com>
---
 net/core/dev.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/net/core/dev.c b/net/core/dev.c
index 2020170..e30ea80 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -5670,7 +5670,9 @@ static int napi_poll(struct napi_struct *n, struct list_head *repoll)
 		trace_napi_poll(n, work, weight);
 	}
 
-	WARN_ON_ONCE(work > weight);
+	if (unlikely(work > weight))
+		pr_err_once("NAPI poll function %pS returned %d, exceeding its budget of %d.\n",
+			    n->poll, work, weight);
 
 	if (likely(work < weight))
 		goto out_unlock;
-- 
2.7.4




More information about the kernel-team mailing list