From: Geert Uytterhoeven Date: Fri, 3 Apr 2015 12:50:28 +0000 (+0200) Subject: fbdev: sh_mobile_lcdc: Fix destruction of uninitialized mutex X-Git-Tag: omap-for-v4.1/fixes-rc1~81^2~1 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7374ccc0c322a6dc55f783a1a9c816c6f308d990;p=pandora-kernel.git fbdev: sh_mobile_lcdc: Fix destruction of uninitialized mutex If sh_mobile_lcdc_probe() fails after the allocation of driver-private data, but before the initialization of all channels, a warning will be printed due to the destruction of an uninitialized mutex: WARNING: CPU: 0 PID: 1 at kernel/locking/mutex-debug.c:116 mutex_destroy+0x5c/0x7c() DEBUG_LOCKS_WARN_ON(mutex_is_locked(lock)) ... Backtrace: ... [] (mutex_destroy) from [] (sh_mobile_lcdc_remove+0x1bc/0x230) r4:df6a4800 r3:00000000 [] (sh_mobile_lcdc_remove) from [] (sh_mobile_lcdc_probe+0xd54/0xe28) Move the initialization of the mutexes from sh_mobile_lcdc_channel_init() to immediately after the allocation of driver-private data to fix this. Note that the interrupt number is moved to a new variable "irq", so we can reuse the existing variable "i" for iterating over the channels. Signed-off-by: Geert Uytterhoeven Acked-by: Laurent Pinchart Signed-off-by: Tomi Valkeinen --- Reading git-diff-tree failed