drm: simplify master cleanup
authorDavid Herrmann <dh.herrmann@gmail.com>
Mon, 4 May 2015 14:05:14 +0000 (16:05 +0200)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
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 <dh.herrmann@gmail.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
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);
 }