]> xenbits.xensource.com Git - people/aperard/linux.git/commitdiff
nouveau: reset the bo resource bus info after an eviction
authorDave Airlie <airlied@redhat.com>
Mon, 11 Mar 2024 07:20:37 +0000 (17:20 +1000)
committerSasha Levin <sashal@kernel.org>
Tue, 26 Mar 2024 22:20:58 +0000 (18:20 -0400)
[ Upstream commit f35c9af45ea7a4b1115b193d84858b14d13517fc ]

Later attempts to refault the bo won't happen and the whole
GPU does to lunch. I think Christian's refactoring of this
code out to the driver broke this not very well tested path.

Fixes: 141b15e59175 ("drm/nouveau: move io_reserve_lru handling into the driver v5")
Cc: Christian König <christian.koenig@amd.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Acked-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Danilo Krummrich <dakr@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240311072037.287905-1-airlied@gmail.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/gpu/drm/nouveau/nouveau_bo.c

index 126b3c6e12f997c8db70bacd9d19e66766deafa9..f2dca41e46c5fb52cf3892ec9df9a37091f755da 100644 (file)
@@ -1194,6 +1194,8 @@ out:
                        drm_vma_node_unmap(&nvbo->bo.base.vma_node,
                                           bdev->dev_mapping);
                        nouveau_ttm_io_mem_free_locked(drm, nvbo->bo.resource);
+                       nvbo->bo.resource->bus.offset = 0;
+                       nvbo->bo.resource->bus.addr = NULL;
                        goto retry;
                }