mirror of
https://github.com/tbsdtv/linux_media.git
synced 2025-07-23 12:43:29 +02:00
net: page_pool: simplify page recycling condition tests
pool_page_reusable() is a leftover from pre-NUMA-aware times. For now, this function is just a redundant wrapper over page_is_pfmemalloc(), so inline it into its sole call site. Signed-off-by: Alexander Lobakin <alobakin@pm.me> Acked-by: Jesper Dangaard Brouer <brouer@redhat.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Acked-by: David Rientjes <rientjes@google.com> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
committed by
Jakub Kicinski
parent
a79afa78e6
commit
05656132a8
@@ -350,14 +350,6 @@ static bool page_pool_recycle_in_cache(struct page *page,
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* page is NOT reusable when:
|
|
||||||
* 1) allocated when system is under some pressure. (page_is_pfmemalloc)
|
|
||||||
*/
|
|
||||||
static bool pool_page_reusable(struct page_pool *pool, struct page *page)
|
|
||||||
{
|
|
||||||
return !page_is_pfmemalloc(page);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* If the page refcnt == 1, this will try to recycle the page.
|
/* If the page refcnt == 1, this will try to recycle the page.
|
||||||
* if PP_FLAG_DMA_SYNC_DEV is set, we'll try to sync the DMA area for
|
* if PP_FLAG_DMA_SYNC_DEV is set, we'll try to sync the DMA area for
|
||||||
* the configured size min(dma_sync_size, pool->max_len).
|
* the configured size min(dma_sync_size, pool->max_len).
|
||||||
@@ -373,9 +365,11 @@ __page_pool_put_page(struct page_pool *pool, struct page *page,
|
|||||||
* regular page allocator APIs.
|
* regular page allocator APIs.
|
||||||
*
|
*
|
||||||
* refcnt == 1 means page_pool owns page, and can recycle it.
|
* refcnt == 1 means page_pool owns page, and can recycle it.
|
||||||
|
*
|
||||||
|
* page is NOT reusable when allocated when system is under
|
||||||
|
* some pressure. (page_is_pfmemalloc)
|
||||||
*/
|
*/
|
||||||
if (likely(page_ref_count(page) == 1 &&
|
if (likely(page_ref_count(page) == 1 && !page_is_pfmemalloc(page))) {
|
||||||
pool_page_reusable(pool, page))) {
|
|
||||||
/* Read barrier done in page_ref_count / READ_ONCE */
|
/* Read barrier done in page_ref_count / READ_ONCE */
|
||||||
|
|
||||||
if (pool->p.flags & PP_FLAG_DMA_SYNC_DEV)
|
if (pool->p.flags & PP_FLAG_DMA_SYNC_DEV)
|
||||||
|
Reference in New Issue
Block a user