drivers/firmware: Add missing platform_device_put() in sysfb_create_simplefb
authorMiaoqian Lin <linmq006@gmail.com>
Fri, 31 Dec 2021 08:04:25 +0000 (08:04 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 6 Jan 2022 14:47:45 +0000 (15:47 +0100)
Add the missing platform_device_put() before return from
sysfb_create_simplefb() in the error handling case.

Fixes: 8633ef82f101 ("drivers/firmware: consolidate EFI framebuffer setup for all arches")
Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
Link: https://lore.kernel.org/r/20211231080431.15385-1-linmq006@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/firmware/sysfb_simplefb.c

index b867619..303a491 100644 (file)
@@ -113,12 +113,16 @@ __init int sysfb_create_simplefb(const struct screen_info *si,
        sysfb_apply_efi_quirks(pd);
 
        ret = platform_device_add_resources(pd, &res, 1);
-       if (ret)
+       if (ret) {
+               platform_device_put(pd);
                return ret;
+       }
 
        ret = platform_device_add_data(pd, mode, sizeof(*mode));
-       if (ret)
+       if (ret) {
+               platform_device_put(pd);
                return ret;
+       }
 
        return platform_device_add(pd);
 }