Merge tag 'iwlwifi-for-kalle-2015-06-12' of https://git.kernel.org/pub/scm/linux...
[firefly-linux-kernel-4.4.55.git] / drivers / gpu / drm / drm_modeset_lock.c
index 51cc47d827d82f09f1ed9d0e4200e299b4fa628c..c0a5cd8c52621301d0cb848e485bbe26cb1190bc 100644 (file)
@@ -80,8 +80,10 @@ int __drm_modeset_lock_all(struct drm_device *dev,
                return -ENOMEM;
 
        if (trylock) {
-               if (!mutex_trylock(&config->mutex))
-                       return -EBUSY;
+               if (!mutex_trylock(&config->mutex)) {
+                       ret = -EBUSY;
+                       goto out;
+               }
        } else {
                mutex_lock(&config->mutex);
        }
@@ -114,6 +116,8 @@ fail:
                goto retry;
        }
 
+out:
+       kfree(ctx);
        return ret;
 }
 EXPORT_SYMBOL(__drm_modeset_lock_all);