drm/ttm: Handle in-memory region copies
authorJakob Bornecrantz <jakob@vmware.com>
Wed, 30 Oct 2013 09:46:56 +0000 (02:46 -0700)
committerThomas Hellstrom <thellstrom@vmware.com>
Wed, 6 Nov 2013 12:35:58 +0000 (04:35 -0800)
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
drivers/gpu/drm/ttm/ttm_bo_util.c

index 7cc904d..8369e35 100644 (file)
@@ -348,7 +348,9 @@ int ttm_bo_move_memcpy(struct ttm_buffer_object *bo,
        if (old_iomap == NULL && ttm == NULL)
                goto out2;
 
-       if (ttm->state == tt_unpopulated) {
+       /* TTM might be null for moves within the same region.
+        */
+       if (ttm && ttm->state == tt_unpopulated) {
                ret = ttm->bdev->driver->ttm_tt_populate(ttm);
                if (ret) {
                        /* if we fail here don't nuke the mm node