drm/radeon/kms: fix memory leak
authorJiri Slaby <jslaby@suse.cz>
Wed, 6 Jan 2010 16:39:31 +0000 (17:39 +0100)
committerDave Airlie <airlied@redhat.com>
Thu, 7 Jan 2010 03:38:59 +0000 (13:38 +1000)
Stanse found a memory leak in radeon_master_create. master_priv is not
freed/assigned on all paths. Fix that.

Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Signed-off-by: Dave Airlie <airlied@redhat.com>
drivers/gpu/drm/radeon/radeon_cp.c

index 0b2f9c2..06123ba 100644 (file)
@@ -2145,6 +2145,7 @@ int radeon_master_create(struct drm_device *dev, struct drm_master *master)
                         &master_priv->sarea);
        if (ret) {
                DRM_ERROR("SAREA setup failed\n");
+               kfree(master_priv);
                return ret;
        }
        master_priv->sarea_priv = master_priv->sarea->handle + sizeof(struct drm_sarea);