aboutsummaryrefslogtreecommitdiffstats
path: root/net/core/page_pool.c
diff options
context:
space:
mode:
authorJakub Kicinski <[email protected]>2023-11-26 23:07:37 +0000
committerPaolo Abeni <[email protected]>2023-11-28 14:48:39 +0000
commit69cb4952b6f6a226c1c0a7ca400398aaa8f75cf2 (patch)
treebb1f869ffd9a3ee34f17db0b5111e327d8e17541 /net/core/page_pool.c
parentnet: page_pool: report amount of memory held by page pools (diff)
downloadkernel-69cb4952b6f6a226c1c0a7ca400398aaa8f75cf2.tar.gz
kernel-69cb4952b6f6a226c1c0a7ca400398aaa8f75cf2.zip
net: page_pool: report when page pool was destroyed
Report when page pool was destroyed. Together with the inflight / memory use reporting this can serve as a replacement for the warning about leaked page pools we currently print to dmesg. Example output for a fake leaked page pool using some hacks in netdevsim (one "live" pool, and one "leaked" on the same dev): $ ./cli.py --no-schema --spec netlink/specs/netdev.yaml \ --dump page-pool-get [{'id': 2, 'ifindex': 3}, {'id': 1, 'ifindex': 3, 'destroyed': 133, 'inflight': 1}] Tested-by: Dragos Tatulea <[email protected]> Reviewed-by: Eric Dumazet <[email protected]> Acked-by: Jesper Dangaard Brouer <[email protected]> Signed-off-by: Jakub Kicinski <[email protected]> Signed-off-by: Paolo Abeni <[email protected]>
Diffstat (limited to 'net/core/page_pool.c')
-rw-r--r--net/core/page_pool.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/core/page_pool.c b/net/core/page_pool.c
index 566390759294..a821fb5fe054 100644
--- a/net/core/page_pool.c
+++ b/net/core/page_pool.c
@@ -953,6 +953,7 @@ void page_pool_destroy(struct page_pool *pool)
if (!page_pool_release(pool))
return;
+ page_pool_detached(pool);
pool->defer_start = jiffies;
pool->defer_warn = jiffies + DEFER_WARN_INTERVAL;