page_pool
Regular
4.4
: Absent ⚠️
4.8
: Absent ⚠️
4.10
: Absent ⚠️
4.13
: Absent ⚠️
4.15
: Absent ⚠️
4.18
: ✅struct page_pool {
struct callback_head rcu;
struct page_pool_params p;
struct pp_alloc_cache alloc;
struct ptr_ring ring;
};
5.0
: ✅struct page_pool {
struct callback_head rcu;
struct page_pool_params p;
struct pp_alloc_cache alloc;
struct ptr_ring ring;
};
5.3
: ✅struct page_pool {
struct page_pool_params p;
u32 pages_state_hold_cnt;
struct pp_alloc_cache alloc;
struct ptr_ring ring;
atomic_t pages_state_release_cnt;
refcount_t user_cnt;
};
5.4
: ✅struct page_pool {
struct page_pool_params p;
struct delayed_work release_dw;
void (*disconnect)(void *);
long unsigned int defer_start;
long unsigned int defer_warn;
u32 pages_state_hold_cnt;
struct pp_alloc_cache alloc;
struct ptr_ring ring;
atomic_t pages_state_release_cnt;
refcount_t user_cnt;
};
5.8
: ✅struct page_pool {
struct page_pool_params p;
struct delayed_work release_dw;
void (*disconnect)(void *);
long unsigned int defer_start;
long unsigned int defer_warn;
u32 pages_state_hold_cnt;
struct pp_alloc_cache alloc;
struct ptr_ring ring;
atomic_t pages_state_release_cnt;
refcount_t user_cnt;
u64 destroy_cnt;
};
5.11
: ✅struct page_pool {
struct page_pool_params p;
struct delayed_work release_dw;
void (*disconnect)(void *);
long unsigned int defer_start;
long unsigned int defer_warn;
u32 pages_state_hold_cnt;
struct pp_alloc_cache alloc;
struct ptr_ring ring;
atomic_t pages_state_release_cnt;
refcount_t user_cnt;
u64 destroy_cnt;
};
5.13
: ✅struct page_pool {
struct page_pool_params p;
struct delayed_work release_dw;
void (*disconnect)(void *);
long unsigned int defer_start;
long unsigned int defer_warn;
u32 pages_state_hold_cnt;
struct pp_alloc_cache alloc;
struct ptr_ring ring;
atomic_t pages_state_release_cnt;
refcount_t user_cnt;
u64 destroy_cnt;
};
5.15
: ✅struct page_pool {
struct page_pool_params p;
struct delayed_work release_dw;
void (*disconnect)(void *);
long unsigned int defer_start;
long unsigned int defer_warn;
u32 pages_state_hold_cnt;
unsigned int frag_offset;
struct page *frag_page;
long int frag_users;
struct pp_alloc_cache alloc;
struct ptr_ring ring;
atomic_t pages_state_release_cnt;
refcount_t user_cnt;
u64 destroy_cnt;
};
5.19
: ✅struct page_pool {
struct page_pool_params p;
struct delayed_work release_dw;
void (*disconnect)(void *);
long unsigned int defer_start;
long unsigned int defer_warn;
u32 pages_state_hold_cnt;
unsigned int frag_offset;
struct page *frag_page;
long int frag_users;
u32 xdp_mem_id;
struct pp_alloc_cache alloc;
struct ptr_ring ring;
atomic_t pages_state_release_cnt;
refcount_t user_cnt;
u64 destroy_cnt;
};
6.2
: ✅struct page_pool {
struct page_pool_params p;
struct delayed_work release_dw;
void (*disconnect)(void *);
long unsigned int defer_start;
long unsigned int defer_warn;
u32 pages_state_hold_cnt;
unsigned int frag_offset;
struct page *frag_page;
long int frag_users;
u32 xdp_mem_id;
struct pp_alloc_cache alloc;
struct ptr_ring ring;
atomic_t pages_state_release_cnt;
refcount_t user_cnt;
u64 destroy_cnt;
};
6.5
: ✅struct page_pool {
struct page_pool_params p;
struct delayed_work release_dw;
void (*disconnect)(void *);
long unsigned int defer_start;
long unsigned int defer_warn;
u32 pages_state_hold_cnt;
unsigned int frag_offset;
struct page *frag_page;
long int frag_users;
struct page_pool_alloc_stats alloc_stats;
u32 xdp_mem_id;
struct pp_alloc_cache alloc;
struct ptr_ring ring;
struct page_pool_recycle_stats *recycle_stats;
atomic_t pages_state_release_cnt;
refcount_t user_cnt;
u64 destroy_cnt;
};
6.8
: ✅struct page_pool {
struct page_pool_params_fast p;
bool has_init_callback;
long int frag_users;
struct page *frag_page;
unsigned int frag_offset;
u32 pages_state_hold_cnt;
struct delayed_work release_dw;
void (*disconnect)(void *);
long unsigned int defer_start;
long unsigned int defer_warn;
struct page_pool_alloc_stats alloc_stats;
u32 xdp_mem_id;
struct pp_alloc_cache alloc;
struct ptr_ring ring;
struct page_pool_recycle_stats *recycle_stats;
atomic_t pages_state_release_cnt;
refcount_t user_cnt;
u64 destroy_cnt;
struct page_pool_params_slow slow;
struct (anon) user;
};
arm64
: ✅struct page_pool {
struct page_pool_params p;
struct delayed_work release_dw;
void (*disconnect)(void *);
long unsigned int defer_start;
long unsigned int defer_warn;
u32 pages_state_hold_cnt;
struct pp_alloc_cache alloc;
struct ptr_ring ring;
atomic_t pages_state_release_cnt;
refcount_t user_cnt;
};
armhf
: ✅struct page_pool {
struct page_pool_params p;
struct delayed_work release_dw;
void (*disconnect)(void *);
long unsigned int defer_start;
long unsigned int defer_warn;
u32 pages_state_hold_cnt;
struct pp_alloc_cache alloc;
struct ptr_ring ring;
atomic_t pages_state_release_cnt;
refcount_t user_cnt;
};
ppc64el
: ✅struct page_pool {
struct page_pool_params p;
struct delayed_work release_dw;
void (*disconnect)(void *);
long unsigned int defer_start;
long unsigned int defer_warn;
u32 pages_state_hold_cnt;
struct pp_alloc_cache alloc;
struct ptr_ring ring;
atomic_t pages_state_release_cnt;
refcount_t user_cnt;
};
riscv64
: ✅struct page_pool {
struct page_pool_params p;
struct delayed_work release_dw;
void (*disconnect)(void *);
long unsigned int defer_start;
long unsigned int defer_warn;
u32 pages_state_hold_cnt;
struct pp_alloc_cache alloc;
struct ptr_ring ring;
atomic_t pages_state_release_cnt;
refcount_t user_cnt;
};
aws
: ✅struct page_pool {
struct page_pool_params p;
struct delayed_work release_dw;
void (*disconnect)(void *);
long unsigned int defer_start;
long unsigned int defer_warn;
u32 pages_state_hold_cnt;
struct pp_alloc_cache alloc;
struct ptr_ring ring;
atomic_t pages_state_release_cnt;
refcount_t user_cnt;
};
azure
: ✅struct page_pool {
struct page_pool_params p;
struct delayed_work release_dw;
void (*disconnect)(void *);
long unsigned int defer_start;
long unsigned int defer_warn;
u32 pages_state_hold_cnt;
struct pp_alloc_cache alloc;
struct ptr_ring ring;
atomic_t pages_state_release_cnt;
refcount_t user_cnt;
};
gcp
: ✅struct page_pool {
struct page_pool_params p;
struct delayed_work release_dw;
void (*disconnect)(void *);
long unsigned int defer_start;
long unsigned int defer_warn;
u32 pages_state_hold_cnt;
struct pp_alloc_cache alloc;
struct ptr_ring ring;
atomic_t pages_state_release_cnt;
refcount_t user_cnt;
};
lowlatency
: ✅struct page_pool {
struct page_pool_params p;
struct delayed_work release_dw;
void (*disconnect)(void *);
long unsigned int defer_start;
long unsigned int defer_warn;
u32 pages_state_hold_cnt;
struct pp_alloc_cache alloc;
struct ptr_ring ring;
atomic_t pages_state_release_cnt;
refcount_t user_cnt;
};
Regular
4.18
and 5.0
✅
5.0
and 5.3
⚠️u32 pages_state_hold_cnt
atomic_t pages_state_release_cnt
refcount_t user_cnt
struct callback_head rcu
5.3
and 5.4
⚠️struct delayed_work release_dw
void (*disconnect)(void *)
long unsigned int defer_start
long unsigned int defer_warn
5.4
and 5.8
⚠️u64 destroy_cnt
5.8
and 5.11
✅
5.11
and 5.13
✅
5.13
and 5.15
⚠️unsigned int frag_offset
struct page *frag_page
long int frag_users
5.15
and 5.19
⚠️u32 xdp_mem_id
5.19
and 6.2
✅
6.2
and 6.5
⚠️struct page_pool_alloc_stats alloc_stats
struct page_pool_recycle_stats *recycle_stats
6.5
and 6.8
⚠️bool has_init_callback
struct page_pool_params_slow slow
struct (anon) user
struct page_pool_params p
➡️ struct page_pool_params_fast p
amd64
and arm64
✅
amd64
and armhf
✅
amd64
and ppc64el
✅
amd64
and riscv64
✅
generic
and aws
✅
generic
and azure
✅
generic
and gcp
✅
generic
and lowlatency
✅