video: sm501fb: Early initialization of mm_lock mutex.

Commit 537a1bf059fa312355696fa6db80726e655e7f17 (fbdev: add mutex for
fb_mmap locking) introduces a ->mm_lock mutex for protecting smem
assignments. Unfortunately in the case of sm501fb these happen quite
early in the initialization code, well before the mutex_init() that takes
place in register_framebuffer(), leading to:

Badness at kernel/mutex.c:207

Pid : 1, Comm: swapper
CPU : 0 Not tainted (2.6.31-rc1-00284-g529ba0d-dirty #2273)

PC is at __mutex_lock_slowpath+0x72/0x1bc
PR is at __mutex_lock_slowpath+0x66/0x1bc
...

matroxfb appears to have the same issue and has solved it with an early
mutex_init(), so we do the same for sm501fb.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Cc: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

authored by Paul Mundt and committed by Linus Torvalds f50bf2b2 de481ba9

Changed files
+2
drivers
video
+2
drivers/video/sm501fb.c
··· 1624 1624 if (!fbi) 1625 1625 return 0; 1626 1626 1627 + mutex_init(&info->fb[head]->mm_lock); 1628 + 1627 1629 ret = sm501fb_init_fb(info->fb[head], head, drvname); 1628 1630 if (ret) { 1629 1631 dev_err(info->dev, "cannot initialise fb %s\n", drvname);