|
@@ -11594,11 +11594,14 @@ static void intel_setup_outputs(struct drm_device *dev)
|
|
|
|
|
|
static void intel_user_framebuffer_destroy(struct drm_framebuffer *fb)
|
|
|
{
|
|
|
+ struct drm_device *dev = fb->dev;
|
|
|
struct intel_framebuffer *intel_fb = to_intel_framebuffer(fb);
|
|
|
|
|
|
drm_framebuffer_cleanup(fb);
|
|
|
+ mutex_lock(&dev->struct_mutex);
|
|
|
WARN_ON(!intel_fb->obj->framebuffer_references--);
|
|
|
- drm_gem_object_unreference_unlocked(&intel_fb->obj->base);
|
|
|
+ drm_gem_object_unreference(&intel_fb->obj->base);
|
|
|
+ mutex_unlock(&dev->struct_mutex);
|
|
|
kfree(intel_fb);
|
|
|
}
|
|
|
|