Lines Matching defs:pool

40  * Drivers that wish to harvest page pool stats and report them to users
42 * struct page_pool_stats call page_pool_get_stats to get stats for the specified pool.
44 bool page_pool_get_stats(struct page_pool *pool,
65 * @pool: pool from which to allocate
69 static inline struct page *page_pool_dev_alloc_pages(struct page_pool *pool)
73 return page_pool_alloc_pages(pool, gfp);
76 static inline struct page *page_pool_dev_alloc_frag(struct page_pool *pool,
82 return page_pool_alloc_frag(pool, offset, size, gfp);
87 * @pool: pool from which page was allocated
93 inline enum dma_data_direction page_pool_get_dma_dir(struct page_pool *pool)
95 return pool->p.dma_dir;
134 static inline bool page_pool_is_last_frag(struct page_pool *pool,
138 return !(pool->p.flags & PP_FLAG_PAGE_FRAG) ||
143 * page_pool_put_page() - release a reference to a page pool page
144 * @pool: pool from which page was allocated
151 * the allocator owns the page and will try to recycle it in one of the pool
155 static inline void page_pool_put_page(struct page_pool *pool,
164 if (!page_pool_is_last_frag(pool, page))
167 page_pool_put_defragged_page(pool, page, dma_sync_size, allow_direct);
172 * page_pool_put_full_page() - release a reference on a page pool page
173 * @pool: pool from which page was allocated
180 static inline void page_pool_put_full_page(struct page_pool *pool,
183 page_pool_put_page(pool, page, -1, allow_direct);
187 * page_pool_recycle_direct() - release a reference on a page pool page
188 * @pool: pool from which page was allocated
192 * (e.g NAPI), since it will recycle the page directly into the pool fast cache.
194 static inline void page_pool_recycle_direct(struct page_pool *pool,
197 page_pool_put_full_page(pool, page, true);
205 * @page: page allocated from a page pool
207 * Fetch the DMA address of the page. The page pool to which the page belongs
227 static inline bool page_pool_put(struct page_pool *pool)
229 return refcount_dec_and_test(&pool->user_cnt);
232 static inline void page_pool_nid_changed(struct page_pool *pool, int new_nid)
234 if (unlikely(pool->p.nid != new_nid))
235 page_pool_update_nid(pool, new_nid);