lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Sat, 29 Jan 2022 15:38:55 -0800 From: Joe Damato <jdamato@...tly.com> To: netdev@...r.kernel.org, kuba@...nel.org, ilias.apalodimas@...aro.org, davem@...emloft.net, hawk@...nel.org Cc: Joe Damato <jdamato@...tly.com> Subject: [net-next v2 05/10] page_pool: Add slow path order 0 allocation stat Track order 0 allocations in the slow path which cause an interaction with the buddy allocator. Signed-off-by: Joe Damato <jdamato@...tly.com> --- include/net/page_pool.h | 1 + net/core/page_pool.c | 6 ++++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/include/net/page_pool.h b/include/net/page_pool.h index 96949ad..ab67e86 100644 --- a/include/net/page_pool.h +++ b/include/net/page_pool.h @@ -144,6 +144,7 @@ struct page_pool { struct page_pool_stats { struct { u64 fast; /* fast path allocations */ + u64 slow; /* slow-path order-0 allocations */ } alloc; }; diff --git a/net/core/page_pool.c b/net/core/page_pool.c index 6f692d9..554a40e 100644 --- a/net/core/page_pool.c +++ b/net/core/page_pool.c @@ -308,10 +308,12 @@ static struct page *__page_pool_alloc_pages_slow(struct page_pool *pool, } /* Return last page */ - if (likely(pool->alloc.count > 0)) + if (likely(pool->alloc.count > 0)) { page = pool->alloc.cache[--pool->alloc.count]; - else + page_pool_stat_alloc_inc(slow); + } else { page = NULL; + } /* When page just alloc'ed is should/must have refcnt 1. */ return page; -- 2.7.4
Powered by blists - more mailing lists