On 01 Mar 14:10, Joe Damato wrote:
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.
Sorry for the late review Joe, Why disabled by default ? if your benchmarks showed no diff. IMHO If we believe in this, we should have it enabled by default.
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.
Let's have this documented under kernel documentation. https://docs.kernel.org/networking/page_pool.html I would also mention the kconfig and any user knobs APIs introduced in this series