mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-08-24 01:59:07 -04:00
drm/ttm: Issue direct reclaim at beneficial_order
Triggering kswap at an order higher than beneficial_order makes little sense, as the driver has already indicated the optimal order at which reclaim is effective. Similarly, issuing direct reclaim or triggering kswap at a lower order than beneficial_order is ineffective, since the driver does not benefit from reclaiming lower-order pages. As a result, direct reclaim should only be issued with __GFP_NORETRY at exactly beneficial_order, or as a fallback, direct reclaim without __GFP_NORETRY at order 0 when failure is not an option. Signed-off-by: Matthew Brost <matthew.brost@intel.com> Reviewed-by: Christian Koenig <christian.koenig@amd.com> Reviewed-by: Andi Shyti <andi.shyti@linux.intel.com> Link: https://patch.msgid.link/20260612225757.3844350-1-matthew.brost@intel.com
This commit is contained in:
@@ -165,8 +165,8 @@ static struct page *ttm_pool_alloc_page(struct ttm_pool *pool, gfp_t gfp_flags,
|
||||
* Do not add latency to the allocation path for allocations orders
|
||||
* device tolds us do not bring them additional performance gains.
|
||||
*/
|
||||
if (beneficial_order && order > beneficial_order)
|
||||
gfp_flags &= ~__GFP_DIRECT_RECLAIM;
|
||||
if (order && beneficial_order && order != beneficial_order)
|
||||
gfp_flags &= ~__GFP_RECLAIM;
|
||||
|
||||
if (!ttm_pool_uses_dma_alloc(pool)) {
|
||||
p = alloc_pages_node(pool->nid, gfp_flags, order);
|
||||
|
||||
Reference in New Issue
Block a user