summaryrefslogtreecommitdiff
path: root/net/core
diff options
context:
space:
mode:
authorJakub Kicinski <kuba@kernel.org>2026-01-19 14:41:40 -0800
committerJakub Kicinski <kuba@kernel.org>2026-01-20 18:27:50 -0800
commitcd18e8ac030e646ea88bad0200e0e4593a1b11b1 (patch)
treeb9fd61116ec646a2ac93e2b217fa40eeda7c7dd8 /net/core
parent833dcd75d54f0bf5aa0a0781ff57456b421fbb40 (diff)
net: add kdoc for napi_consume_skb()
Looks like AI reviewers miss that napi_consume_skb() must have a real budget passed to it. Let's see if adding a real kdoc will help them figure this out. Reviewed-by: Jason Xing <kerneljasonxing@gmail.com> Link: https://patch.msgid.link/20260119224140.1362729-1-kuba@kernel.org Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'net/core')
-rw-r--r--net/core/skbuff.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index 1c2b9ae7bce6..c57c806edba8 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -1507,9 +1507,20 @@ void napi_skb_free_stolen_head(struct sk_buff *skb)
napi_skb_cache_put(skb);
}
+/**
+ * napi_consume_skb() - consume skb in NAPI context, try to feed skb cache
+ * @skb: buffer to free
+ * @budget: NAPI budget
+ *
+ * Non-zero @budget must come from the @budget argument passed by the core
+ * to a NAPI poll function. Note that core may pass budget of 0 to NAPI poll
+ * for example when polling for netpoll / netconsole.
+ *
+ * Passing @budget of 0 is safe from any context, it turns this function
+ * into dev_consume_skb_any().
+ */
void napi_consume_skb(struct sk_buff *skb, int budget)
{
- /* Zero budget indicate non-NAPI context called us, like netpoll */
if (unlikely(!budget || !skb)) {
dev_consume_skb_any(skb);
return;