drm/amdgpu: immediately use GTT for new allocations
commit a755906fb2b8370c43e91ba437ae1b3e228e8b02 upstream.
Only use GTT as a fallback if we already have a backing store. This
prevents evictions when an application constantly allocates and frees new
memory.
Partially fixes
https://gitlab.freedesktop.org/drm/amd/-/issues/3844#note_2833985.
Signed-off-by: Christian König <christian.koenig@amd.com>
Fixes: 216c1282dd ("drm/amdgpu: use GTT only as fallback for VRAM|GTT")
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
4b171d4cbf
commit
a53d959fe6
@@ -161,8 +161,8 @@ void amdgpu_bo_placement_from_domain(struct amdgpu_bo *abo, u32 domain)
|
|||||||
* When GTT is just an alternative to VRAM make sure that we
|
* When GTT is just an alternative to VRAM make sure that we
|
||||||
* only use it as fallback and still try to fill up VRAM first.
|
* only use it as fallback and still try to fill up VRAM first.
|
||||||
*/
|
*/
|
||||||
if (domain & abo->preferred_domains & AMDGPU_GEM_DOMAIN_VRAM &&
|
if (abo->tbo.resource && !(adev->flags & AMD_IS_APU) &&
|
||||||
!(adev->flags & AMD_IS_APU))
|
domain & abo->preferred_domains & AMDGPU_GEM_DOMAIN_VRAM)
|
||||||
places[c].flags |= TTM_PL_FLAG_FALLBACK;
|
places[c].flags |= TTM_PL_FLAG_FALLBACK;
|
||||||
c++;
|
c++;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user