]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
media: aspeed-video: Fix memory leaks in aspeed_video_probe
authorNavid Emamdoost <navid.emamdoost@gmail.com>
Sun, 10 Nov 2019 06:23:38 +0000 (07:23 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 17 Jan 2020 18:48:58 +0000 (19:48 +0100)
commit c3df30a01da4955e04fa068c503cd784b31dad92 upstream.

In the implementation of aspeed_video_probe() the allocated memory for
video should be released if either devm_ioremap_resource()
or aspeed_video_init() or aspeed_video_setup_video() fails. Replace
kzalloc() with devm_kzalloc to avoid explicit release for video.

Fixes: d2b4387f3bdf ("media: platform: Add Aspeed Video Engine driver")
Signed-off-by: Navid Emamdoost <navid.emamdoost@gmail.com>
Reviewed-by: Jae Hyun Yoo <jae.hyun.yoo@linux.intel.com>
Reviewed-by: Eddie James <eajames@linux.ibm.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/media/platform/aspeed-video.c

index 096a7c9a8963bb97ce1a2651878b1f346b0d0e8a..4eaaf39b9223c4b6800e3cbd4f5cd1a86f451f4b 100644 (file)
@@ -1658,7 +1658,8 @@ static int aspeed_video_probe(struct platform_device *pdev)
 {
        int rc;
        struct resource *res;
-       struct aspeed_video *video = kzalloc(sizeof(*video), GFP_KERNEL);
+       struct aspeed_video *video =
+               devm_kzalloc(&pdev->dev, sizeof(*video), GFP_KERNEL);
 
        if (!video)
                return -ENOMEM;