Input: replace spin_lock_bh with spin_lock_irqsave in ml_ff_playback
authorArjan van de Ven <arjan@infradead.org>
Mon, 24 Nov 2008 03:35:57 +0000 (22:35 -0500)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Mon, 24 Nov 2008 16:36:38 +0000 (11:36 -0500)
commit8442c87d2f6c73cdc9a391e4dd9390523d242bda
treeaa2ad9cc222dfbe7b605675707d68288800823f3
parent5f4ba04ffd8fc9f6b15b92270ef0517ae52dcf3a
Input: replace spin_lock_bh with spin_lock_irqsave in ml_ff_playback

ml_ff_playback() uses spin_(un)lock_bh. However this function is
called with interrupts disabled from erase_effect() in
drivers/input/ff-core.c:196.

This is not permitted, and will result in a WARN_ON in the bottom
half handling code. This patch changes this function to just use
spin_lock_irqsave() instead, solving the problem and simplifying
the locking logic.

This was reported as entry #106559 in kerneloops.org

Reported-by: kerneloops.org
Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
drivers/input/ff-memless.c