]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/gpu/drm/nouveau/nouveau_notifier.c
Merge branch 'master' of /repos/git/linux-2.6
[mv-sheeva.git] / drivers / gpu / drm / nouveau / nouveau_notifier.c
index d99dc087f9b1b774316b9b4e41407c9fa4c4ffa5..9537f3e30115fb16135794aa674fa2a65da7ecb7 100644 (file)
@@ -61,11 +61,8 @@ nouveau_notifier_init_channel(struct nouveau_channel *chan)
 
        chan->notifier_bo = ntfy;
 out_err:
-       if (ret) {
-               mutex_lock(&dev->struct_mutex);
-               drm_gem_object_unreference(ntfy->gem);
-               mutex_unlock(&dev->struct_mutex);
-       }
+       if (ret)
+               drm_gem_object_unreference_unlocked(ntfy->gem);
 
        return ret;
 }
@@ -81,8 +78,8 @@ nouveau_notifier_takedown_channel(struct nouveau_channel *chan)
        nouveau_bo_unmap(chan->notifier_bo);
        mutex_lock(&dev->struct_mutex);
        nouveau_bo_unpin(chan->notifier_bo);
-       drm_gem_object_unreference(chan->notifier_bo->gem);
        mutex_unlock(&dev->struct_mutex);
+       drm_gem_object_unreference_unlocked(chan->notifier_bo->gem);
        nouveau_mem_takedown(&chan->notifier_heap);
 }