input: replace spin_lock_bh with spin_lock_irqsave in ml_ff_playback
authorArjan van de Ven <arjan@linux.intel.com>
Mon, 24 Nov 2008 00:57:36 +0000 (16:57 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sun, 30 Nov 2008 18:36:51 +0000 (10:36 -0800)
commit211f05a034f49586fdd071abd174853217ec29ee
treea23a1dd79b65049855e9344df42305442aa2a170
parent02d0e6753d8ab0173b63338157929e52eac86d12
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: Linus Torvalds <torvalds@linux-foundation.org>
drivers/input/ff-memless.c