[AMD Official Use Only - AMD Internal Distribution Only]
From: amd-gfx <amd-gfx-boun...@lists.freedesktop.org> On Behalf Of Deng, Emily Sent: Monday, May 26, 2025 9:51 AM To: Chen, Xiaogang <xiaogang.c...@amd.com>; amd-gfx@lists.freedesktop.org Subject: RE: [PATCH v2] drm/ttm: Should to return the evict error [AMD Official Use Only - AMD Internal Distribution Only] [AMD Official Use Only - AMD Internal Distribution Only] From: Chen, Xiaogang <xiaogang.c...@amd.com<mailto:xiaogang.c...@amd.com>> Sent: Friday, May 23, 2025 6:27 AM To: Deng, Emily <emily.d...@amd.com<mailto:emily.d...@amd.com>>; amd-gfx@lists.freedesktop.org<mailto:amd-gfx@lists.freedesktop.org> Subject: Re: [PATCH v2] drm/ttm: Should to return the evict error On 5/21/2025 9:42 PM, Deng, Emily wrote: [AMD Official Use Only - AMD Internal Distribution Only] [AMD Official Use Only - AMD Internal Distribution Only] Ping...... Emily Deng Best Wishes -----Original Message----- From: Emily Deng <emily.d...@amd.com><mailto:emily.d...@amd.com> Sent: Wednesday, May 21, 2025 11:57 AM To: amd-gfx@lists.freedesktop.org<mailto:amd-gfx@lists.freedesktop.org> Cc: Deng, Emily <emily.d...@amd.com><mailto:emily.d...@amd.com> Subject: [PATCH v2] drm/ttm: Should to return the evict error For the evict fail case, the evict error should be returned. v2: Consider ENOENT case. Signed-off-by: Emily Deng <emily.d...@amd.com><mailto:emily.d...@amd.com> --- drivers/gpu/drm/ttm/ttm_resource.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/ttm/ttm_resource.c b/drivers/gpu/drm/ttm/ttm_resource.c index 097716bd248a..abf104ae9d35 100644 --- a/drivers/gpu/drm/ttm/ttm_resource.c +++ b/drivers/gpu/drm/ttm/ttm_resource.c @@ -511,12 +511,12 @@ int ttm_resource_manager_evict_all(struct ttm_device *bdev, .force_alloc = true }; struct dma_fence *fence; - int ret; + int ret, evict_ret = 0; do { - ret = ttm_bo_evict_first(bdev, man, &ctx); + evict_ret = ttm_bo_evict_first(bdev, man, &ctx); cond_resched(); - } while (!ret); + } while (!evict_ret); spin_lock(&man->move_lock); fence = dma_fence_get(man->move); @@ -529,7 +529,7 @@ int ttm_resource_manager_evict_all(struct ttm_device *bdev, return ret; } - return 0; + return (evict_ret == -ENOENT) ? 0 : evict_ret; } Can you explain why you care ENOENT(No such file or directory) specifically? Regards Xiaogang For ENOENT, it simply means the resource or file doesn't exist—it doesn't indicate an error during eviction. We only need to focus on actual eviction-related errors. Emily Deng Best Wishes EXPORT_SYMBOL(ttm_resource_manager_evict_all); -- 2.34.1