drm/vc4: Free hang state before destroying BO cache.
authorEric Anholt <eric@anholt.net>
Tue, 26 Jul 2016 20:47:13 +0000 (13:47 -0700)
committerEric Anholt <eric@anholt.net>
Sat, 20 Aug 2016 02:17:32 +0000 (19:17 -0700)
The BO cache will complain if BOs are still allocated when we try to
destroy it (since freeing those BOs would try to hit the cache).  You
could hit this if you were to unload the module after a GPU hang.

Signed-off-by: Eric Anholt <eric@anholt.net>
Fixes: 214613656b51 ("drm/vc4: Add an interface for capturing the GPU state after a hang.")
drivers/gpu/drm/vc4/vc4_gem.c

index bfd1b5280ff3ae8c4bddee69832d421a55fc004f..fba2c831afe66c1507e3b9038216c7dc90a69cb2 100644 (file)
@@ -942,8 +942,8 @@ vc4_gem_destroy(struct drm_device *dev)
                vc4->overflow_mem = NULL;
        }
 
-       vc4_bo_cache_destroy(dev);
-
        if (vc4->hang_state)
                vc4_free_hang_state(dev, vc4->hang_state);
+
+       vc4_bo_cache_destroy(dev);
 }