drm/ttm: Handle in-memory region copies
authorJakob Bornecrantz <jakob@vmware.com>
Wed, 30 Oct 2013 09:46:56 +0000 (02:46 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 4 Dec 2013 18:50:32 +0000 (10:50 -0800)
commit 9a0599ddeae012a771bba5e23393fc52d8a59d89 upstream.

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>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/gpu/drm/ttm/ttm_bo_util.c

index f8187ead7b373336c21e603caa448bad99d50b47..2d69262690361739e6ace47c0e3b62073095ca4d 100644 (file)
@@ -342,7 +342,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)
                        goto out1;