Commit 9dd05df8 authored by Jakub Kicinski's avatar Jakub Kicinski
Browse files

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 86e25f40 ("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: default avatarJoe Damato <jdamato@fastly.com>
Reviewed-by: default avatarEric Dumazet <edumazet@google.com>
Link: https://patch.msgid.link/20250203215816.1294081-1-kuba@kernel.org


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent b565a8c7
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -7071,6 +7071,9 @@ void __netif_napi_del_locked(struct napi_struct *napi)
	if (!test_and_clear_bit(NAPI_STATE_LISTED, &napi->state))
		return;

	/* Make sure NAPI is disabled (or was never enabled). */
	WARN_ON(!test_bit(NAPI_STATE_SCHED, &napi->state));

	if (napi->config) {
		napi->index = -1;
		napi->config = NULL;