drm: simplify master cleanup
authorDavid Herrmann <[email protected]>
Mon, 4 May 2015 14:05:14 +0000 (16:05 +0200)
committerDaniel Vetter <[email protected]>
Tue, 5 May 2015 07:46:38 +0000 (09:46 +0200)
In drm_master_destroy() we _free_ the master object. There is no reason to
hold any locks while dropping its static members, nor do we have to reset
it to 0.

Furthermore, kfree() already does NULL checks, so call it directly on
master->unique and drop the redundant reset-code.

Signed-off-by: David Herrmann <[email protected]>
Reviewed-by: Chris Wilson <[email protected]>
Signed-off-by: Daniel Vetter <[email protected]>
drivers/gpu/drm/drm_drv.c

index 88b594c0593abcf464c4cf3d366385d7a37b58cc..3b3c4f537e957460aea5de8a60833949c709bd94 100644 (file)
@@ -132,15 +132,10 @@ static void drm_master_destroy(struct kref *kref)
                        r_list = NULL;
                }
        }
-
-       if (master->unique) {
-               kfree(master->unique);
-               master->unique = NULL;
-               master->unique_len = 0;
-       }
        mutex_unlock(&dev->struct_mutex);
 
        idr_destroy(&master->magic_map);
+       kfree(master->unique);
        kfree(master);
 }