Skip to content

Commit 9dd05df

Browse files
committed
net: warn if NAPI instance wasn't shut down
Drivers should always disable a NAPI instance before removing it. If they don't the instance may be queued for polling. Since commit 86e25f4 ("net: napi: Add napi_config") we also remove the NAPI from the busy polling hash table in napi_disable(), so not disabling would leave a stale entry there. Use of busy polling is relatively uncommon so bugs may be lurking in the drivers. Add an explicit warning. Reviewed-by: Joe Damato <jdamato@fastly.com> Reviewed-by: Eric Dumazet <edumazet@google.com> Link: https://patch.msgid.link/20250203215816.1294081-1-kuba@kernel.org Signed-off-by: Jakub Kicinski <kuba@kernel.org>
1 parent b565a8c commit 9dd05df

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

net/core/dev.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7071,6 +7071,9 @@ void __netif_napi_del_locked(struct napi_struct *napi)
70717071
if (!test_and_clear_bit(NAPI_STATE_LISTED, &napi->state))
70727072
return;
70737073

7074+
/* Make sure NAPI is disabled (or was never enabled). */
7075+
WARN_ON(!test_bit(NAPI_STATE_SCHED, &napi->state));
7076+
70747077
if (napi->config) {
70757078
napi->index = -1;
70767079
napi->config = NULL;

0 commit comments

Comments
 (0)