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 bfd1b52..fba2c83 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);
 }