diff options
author | Jakob Bornecrantz <jakob@vmware.com> | 2013-10-30 05:46:56 -0400 |
---|---|---|
committer | Thomas Hellstrom <thellstrom@vmware.com> | 2013-11-06 07:35:58 -0500 |
commit | 9a0599ddeae012a771bba5e23393fc52d8a59d89 (patch) | |
tree | 378cc851a1bbdbded9b73f47eaa946ad1b01446d /drivers/gpu/drm/ttm | |
parent | 15205fbcbe5abf52d6b064c5e8d2f901518d14a2 (diff) |
drm/ttm: Handle in-memory region copies
Fix the case where the ttm pointer may be NULL causing
a NULL pointer dereference.
Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
Signed-off-by: Thomas Hellström <thellstrom@vmware.com>
Cc: stable@vger.kernel.org
Diffstat (limited to 'drivers/gpu/drm/ttm')
-rw-r--r-- | drivers/gpu/drm/ttm/ttm_bo_util.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpu/drm/ttm/ttm_bo_util.c b/drivers/gpu/drm/ttm/ttm_bo_util.c index 7cc904d3a4d1..8369e35c0dce 100644 --- a/drivers/gpu/drm/ttm/ttm_bo_util.c +++ b/drivers/gpu/drm/ttm/ttm_bo_util.c | |||
@@ -348,7 +348,9 @@ int ttm_bo_move_memcpy(struct ttm_buffer_object *bo, | |||
348 | if (old_iomap == NULL && ttm == NULL) | 348 | if (old_iomap == NULL && ttm == NULL) |
349 | goto out2; | 349 | goto out2; |
350 | 350 | ||
351 | if (ttm->state == tt_unpopulated) { | 351 | /* TTM might be null for moves within the same region. |
352 | */ | ||
353 | if (ttm && ttm->state == tt_unpopulated) { | ||
352 | ret = ttm->bdev->driver->ttm_tt_populate(ttm); | 354 | ret = ttm->bdev->driver->ttm_tt_populate(ttm); |
353 | if (ret) { | 355 | if (ret) { |
354 | /* if we fail here don't nuke the mm node | 356 | /* if we fail here don't nuke the mm node |