diff options
Diffstat (limited to 'drivers/video/fbmem.c')
-rw-r--r-- | drivers/video/fbmem.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/video/fbmem.c b/drivers/video/fbmem.c index d8d9831b3fdb..070b9a13d892 100644 --- a/drivers/video/fbmem.c +++ b/drivers/video/fbmem.c | |||
@@ -1668,8 +1668,10 @@ static int do_unregister_framebuffer(struct fb_info *fb_info) | |||
1668 | 1668 | ||
1669 | if (!lock_fb_info(fb_info)) | 1669 | if (!lock_fb_info(fb_info)) |
1670 | return -ENODEV; | 1670 | return -ENODEV; |
1671 | console_lock(); | ||
1671 | event.info = fb_info; | 1672 | event.info = fb_info; |
1672 | ret = fb_notifier_call_chain(FB_EVENT_FB_UNBIND, &event); | 1673 | ret = fb_notifier_call_chain(FB_EVENT_FB_UNBIND, &event); |
1674 | console_unlock(); | ||
1673 | unlock_fb_info(fb_info); | 1675 | unlock_fb_info(fb_info); |
1674 | 1676 | ||
1675 | if (ret) | 1677 | if (ret) |
@@ -1684,7 +1686,9 @@ static int do_unregister_framebuffer(struct fb_info *fb_info) | |||
1684 | num_registered_fb--; | 1686 | num_registered_fb--; |
1685 | fb_cleanup_device(fb_info); | 1687 | fb_cleanup_device(fb_info); |
1686 | event.info = fb_info; | 1688 | event.info = fb_info; |
1689 | console_lock(); | ||
1687 | fb_notifier_call_chain(FB_EVENT_FB_UNREGISTERED, &event); | 1690 | fb_notifier_call_chain(FB_EVENT_FB_UNREGISTERED, &event); |
1691 | console_unlock(); | ||
1688 | 1692 | ||
1689 | /* this may free fb info */ | 1693 | /* this may free fb info */ |
1690 | put_fb_info(fb_info); | 1694 | put_fb_info(fb_info); |