diff options
Diffstat (limited to 'target/linux/generic/backport-5.15/600-v5.18-page_pool-Add-allocation-stats.patch')
-rw-r--r-- | target/linux/generic/backport-5.15/600-v5.18-page_pool-Add-allocation-stats.patch | 56 |
1 files changed, 31 insertions, 25 deletions
diff --git a/target/linux/generic/backport-5.15/600-v5.18-page_pool-Add-allocation-stats.patch b/target/linux/generic/backport-5.15/600-v5.18-page_pool-Add-allocation-stats.patch index 7b97181403..3dbfb7ccba 100644 --- a/target/linux/generic/backport-5.15/600-v5.18-page_pool-Add-allocation-stats.patch +++ b/target/linux/generic/backport-5.15/600-v5.18-page_pool-Add-allocation-stats.patch @@ -1,30 +1,36 @@ -commit 8610037e8106b48c79cfe0afb92b2b2466e51c3d -Author: Joe Damato <jdamato@fastly.com> -Date: Tue Mar 1 23:55:47 2022 -0800 +From 8610037e8106b48c79cfe0afb92b2b2466e51c3d Mon Sep 17 00:00:00 2001 +From: Joe Damato <jdamato@fastly.com> +Date: Tue, 1 Mar 2022 23:55:47 -0800 +Subject: [PATCH] page_pool: Add allocation stats - page_pool: Add allocation stats - - Add per-pool statistics counters for the allocation path of a page pool. - These stats are incremented in softirq context, so no locking or per-cpu - variables are needed. - - This code is disabled by default and a kernel config option is provided for - users who wish to enable them. - - The statistics added are: - - fast: successful fast path allocations - - slow: slow path order-0 allocations - - slow_high_order: slow path high order allocations - - empty: ptr ring is empty, so a slow path allocation was forced. - - refill: an allocation which triggered a refill of the cache - - waive: pages obtained from the ptr ring that cannot be added to - the cache due to a NUMA mismatch. - - Signed-off-by: Joe Damato <jdamato@fastly.com> - Acked-by: Jesper Dangaard Brouer <brouer@redhat.com> - Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> - Signed-off-by: David S. Miller <davem@davemloft.net> +Add per-pool statistics counters for the allocation path of a page pool. +These stats are incremented in softirq context, so no locking or per-cpu +variables are needed. +This code is disabled by default and a kernel config option is provided for +users who wish to enable them. + +The statistics added are: + - fast: successful fast path allocations + - slow: slow path order-0 allocations + - slow_high_order: slow path high order allocations + - empty: ptr ring is empty, so a slow path allocation was forced. + - refill: an allocation which triggered a refill of the cache + - waive: pages obtained from the ptr ring that cannot be added to + the cache due to a NUMA mismatch. + +Signed-off-by: Joe Damato <jdamato@fastly.com> +Acked-by: Jesper Dangaard Brouer <brouer@redhat.com> +Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> +Signed-off-by: David S. Miller <davem@davemloft.net> +--- + include/net/page_pool.h | 18 ++++++++++++++++++ + net/Kconfig | 13 +++++++++++++ + net/core/page_pool.c | 24 ++++++++++++++++++++---- + 3 files changed, 51 insertions(+), 4 deletions(-) + +diff --git a/include/net/page_pool.h b/include/net/page_pool.h +index 97c3c19872ff..1f27e8a48830 100644 --- a/include/net/page_pool.h +++ b/include/net/page_pool.h @@ -82,6 +82,19 @@ struct page_pool_params { |