summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorFrancisco Jerez2010-07-04 12:54:23 +0200
committerBen Skeggs2010-07-13 02:13:27 +0200
commit311ab6943fad769a1435bb375d3c821f3b41cdde (patch)
treefa628b8e05a22dd689a8ebfde05c8142a13f0be1 /drivers
parentdrm/nv04-nv40: Drop redundant logging. (diff)
downloadkernel-qcow2-linux-311ab6943fad769a1435bb375d3c821f3b41cdde.tar.gz
kernel-qcow2-linux-311ab6943fad769a1435bb375d3c821f3b41cdde.tar.xz
kernel-qcow2-linux-311ab6943fad769a1435bb375d3c821f3b41cdde.zip
drm/nouveau: Move the fence wait before migration resource clean-up.
Avoids an oops in the fence wait failure path (bug 26521). Signed-off-by: Francisco Jerez <currojerez@riseup.net> Tested-by: Marcin Slusarz <marcin.slusarz@gmail.com> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/gpu/drm/nouveau/nouveau_bo.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/gpu/drm/nouveau/nouveau_bo.c b/drivers/gpu/drm/nouveau/nouveau_bo.c
index 9f5ab4677758..1371c77295f2 100644
--- a/drivers/gpu/drm/nouveau/nouveau_bo.c
+++ b/drivers/gpu/drm/nouveau/nouveau_bo.c
@@ -461,9 +461,9 @@ nouveau_bo_move_accel_cleanup(struct nouveau_channel *chan,
return ret;
ret = ttm_bo_move_accel_cleanup(&nvbo->bo, fence, NULL,
- evict, no_wait_reserve, no_wait_gpu, new_mem);
- if (nvbo->channel && nvbo->channel != chan)
- ret = nouveau_fence_wait(fence, NULL, false, false);
+ evict || (nvbo->channel &&
+ nvbo->channel != chan),
+ no_wait_reserve, no_wait_gpu, new_mem);
nouveau_fence_unref((void *)&fence);
return ret;
}