page_pool_get_stats(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– page_pool_get_stats(9) πŸ’–

okay so bestie, you're reading the Kernel API Manual page for page_pool_get_stats and honestly? iconic of you. let's get into it 🫢


✨ NAME ✨

page_pool_get_stats β€” fetch page pool stats πŸ’… like, literally go get the stats, that's the whole job


🌸 SYNOPSIS 🌸

void page_pool_get_stats (const struct page_pool *pool , struct
page_pool_stats *stats );

no cap, that's the signature. two args, one void return, we move πŸŽ€


πŸ¦‹ ARGUMENTS πŸ¦‹

  • pool β€” the pool from which the page was allocated ✨ this is your main character right here
  • stats β€” a struct page_pool_stats to fill in πŸ’– you hand it over empty and it comes back full, it's giving makeover

πŸ‘‘ DESCRIPTION πŸ‘‘

first things first, bestie, and I need you to hear me: this is a deprecated driver API for querying stats 😭 I know. I know. but listen β€” page pool stats can be queried via netdev Netlink now, so that's the vibe going forward. periodt.

so what does this actually do? it retrieves statistics about the page_pool ⭐

heads up babes πŸ’€ this API is only available if the kernel has been configured with CONFIG_PAGE_POOL_STATS=y. so do your vibe check on that config first, okay?

here's the flow, and it's honestly so simple: a pointer to a caller allocated struct page_pool_stats structure is passed to this API, and it gets filled in πŸŽ€ that's it. that's the whole thing.

and then? the caller can report those stats to the user πŸ”₯ perhaps via ethtool, debugfs, etc. β€” like, you do you, the delivery mechanism is your choice, slay.


🌈 SEE ALSO 🌈

go read those too, iykyk πŸ’…


and that's the page! mwah πŸ’‹ this came from ./net/core, dated October 2026 β€” yes, from the future, we're built different over here πŸ”₯πŸ‘‘βœ¨

πŸ“¦ where this page comes from