matroxfb: fix regression with uninitalized fb_info->mm_lock mutex (second head)
authorKrzysztof Helt <krzysztof.h1@wp.pl>
Tue, 7 Jul 2009 20:34:13 +0000 (22:34 +0200)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 8 Jul 2009 16:19:50 +0000 (09:19 -0700)
Remove redundant locking by the mm_lock mutex before a second head of
matrox framebuffer is registered.

This fixes a problem with uninitialized the fb_info->mm_lock mutex
introduced by the commit 537a1bf059f " fbdev: add mutex for fb_mmap
locking"

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/video/matrox/matroxfb_crtc2.c

index 909e10a11898b4c54a83b04eb56aa9171b9a90d3..ebcb5c6b4962bb23cfab791073c9803244efa85f 100644 (file)
@@ -289,16 +289,18 @@ static int matroxfb_dh_release(struct fb_info* info, int user) {
 #undef m2info
 }
 
+/*
+ * This function is called before the register_framebuffer so
+ * no locking is needed.
+ */
 static void matroxfb_dh_init_fix(struct matroxfb_dh_fb_info *m2info)
 {
        struct fb_fix_screeninfo *fix = &m2info->fbcon.fix;
 
        strcpy(fix->id, "MATROX DH");
 
-       mutex_lock(&m2info->fbcon.mm_lock);
        fix->smem_start = m2info->video.base;
        fix->smem_len = m2info->video.len_usable;
-       mutex_unlock(&m2info->fbcon.mm_lock);
        fix->ypanstep = 1;
        fix->ywrapstep = 0;
        fix->xpanstep = 8;      /* TBD */