drm/ttm: Put BO in its memory manager's lru list
authorxinhui pan <xinhui.pan@amd.com>
Wed, 10 Nov 2021 04:31:48 +0000 (12:31 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 27 Jan 2022 10:03:01 +0000 (11:03 +0100)
commit 781050b0a3164934857c300bb0bc291e38c26b6f upstream.

After we move BO to a new memory region, we should put it to
the new memory manager's lru list regardless we unlock the resv or not.

Cc: stable@vger.kernel.org
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: xinhui pan <xinhui.pan@amd.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20211110043149.57554-1-xinhui.pan@amd.com
Signed-off-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/gpu/drm/ttm/ttm_bo.c

index bb9e02c31946e906bd5c2533082fe6c76055689b..900edaf5d68ee0efa3c875bafab100bf7f33c708 100644 (file)
@@ -724,6 +724,8 @@ int ttm_mem_evict_first(struct ttm_device *bdev,
        ret = ttm_bo_evict(bo, ctx);
        if (locked)
                ttm_bo_unreserve(bo);
+       else
+               ttm_bo_move_to_lru_tail_unlocked(bo);
 
        ttm_bo_put(bo);
        return ret;