sm501fb: unregister framebuffer only if registered
authorSudip Mukherjee <sudipm.mukherjee@gmail.com>
Thu, 9 Nov 2017 17:09:31 +0000 (18:09 +0100)
committerBartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Thu, 9 Nov 2017 17:09:31 +0000 (18:09 +0100)
There are cases when panel and crt both are not defined and only one of
them is defined and initialized. In such cases, while removing the
device, unregister the framebuffer only if it was registered.

Signed-off-by: Sudip Mukherjee <sudipm.mukherjee@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
drivers/video/fbdev/sm501fb.c

index 381475f..577a483 100644 (file)
@@ -2079,8 +2079,10 @@ static int sm501fb_remove(struct platform_device *pdev)
        sm501_free_init_fb(info, HEAD_CRT);
        sm501_free_init_fb(info, HEAD_PANEL);
 
-       unregister_framebuffer(fbinfo_crt);
-       unregister_framebuffer(fbinfo_pnl);
+       if (fbinfo_crt)
+               unregister_framebuffer(fbinfo_crt);
+       if (fbinfo_pnl)
+               unregister_framebuffer(fbinfo_pnl);
 
        sm501fb_stop(info);
        kfree(info);