Skip to content

Commit

Permalink
fbdev: s1d13xxxfb: add missed unregister_framebuffer in remove
Browse files Browse the repository at this point in the history
The driver calls register_framebuffer() in probe but does not call
unregister_framebuffer() in remove.
Rename current remove to __s1d13xxxfb_remove() for error handler.
Then add a new remove to call unregister_framebuffer().

Signed-off-by: Chuhong Yuan <[email protected]>
Cc: Kristoffer Ericson <[email protected]>
[b.zolnierkie: ported over recent s1d13xxxfb changes]
[b.zolnierkie: removed extra newline]
Signed-off-by: Bartlomiej Zolnierkiewicz <[email protected]>
Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
  • Loading branch information
WillLester authored and bzolnier committed Apr 17, 2020
1 parent 5e4096e commit 8213fb4
Showing 1 changed file with 10 additions and 4 deletions.
14 changes: 10 additions & 4 deletions drivers/video/fbdev/s1d13xxxfb.c
Original file line number Diff line number Diff line change
Expand Up @@ -721,9 +721,7 @@ static void s1d13xxxfb_fetch_hw_state(struct fb_info *info)
xres, yres, xres_virtual, yres_virtual, is_color, is_dual, is_tft);
}


static int
s1d13xxxfb_remove(struct platform_device *pdev)
static void __s1d13xxxfb_remove(struct platform_device *pdev)
{
struct fb_info *info = platform_get_drvdata(pdev);
struct s1d13xxxfb_par *par = NULL;
Expand All @@ -749,6 +747,14 @@ s1d13xxxfb_remove(struct platform_device *pdev)
resource_size(&pdev->resource[0]));
release_mem_region(pdev->resource[1].start,
resource_size(&pdev->resource[1]));
}

static int s1d13xxxfb_remove(struct platform_device *pdev)
{
struct fb_info *info = platform_get_drvdata(pdev);

unregister_framebuffer(info);
__s1d13xxxfb_remove(pdev);
return 0;
}

Expand Down Expand Up @@ -895,7 +901,7 @@ static int s1d13xxxfb_probe(struct platform_device *pdev)
return 0;

bail:
s1d13xxxfb_remove(pdev);
__s1d13xxxfb_remove(pdev);
return ret;

}
Expand Down

0 comments on commit 8213fb4

Please sign in to comment.