drivers/video/fbmem.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/video/fbmem.c b/drivers/video/fbmem.c index 5aac00e..13e956e 100644 --- a/drivers/video/fbmem.c +++ b/drivers/video/fbmem.c @@ -1569,6 +1569,7 @@ static void do_remove_conflicting_framebuffers(struct apertures_struct *a, static int do_register_framebuffer(struct fb_info *fb_info) { + mutex_lock(®istration_lock); int i; struct fb_event event; struct fb_videomode mode; @@ -1624,6 +1625,7 @@ static int do_register_framebuffer(struct fb_info *fb_info) fb_var_to_videomode(&mode, &fb_info->var); fb_add_videomode(&mode, &fb_info->modelist); registered_fb[i] = fb_info; + mutex_unlock(®istration_lock); event.info = fb_info; if (!lock_fb_info(fb_info)) @@ -1690,9 +1692,7 @@ register_framebuffer(struct fb_info *fb_info) { int ret; - mutex_lock(®istration_lock); ret = do_register_framebuffer(fb_info); - mutex_unlock(®istration_lock); return ret; }