diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-05-12 22:21:24 +0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-05-12 22:21:24 +0400 |
commit | 3b4334e200ba50cd02e53b122ef56214b170ea23 (patch) | |
tree | 22a81bce0bf2ebd189ea8f5c7f7d0fbfc78a9a01 /drivers/input/touchscreen/tsc2007.c | |
parent | 34fd5dad46fc494c6ed3b174b2c991ea9961ebe9 (diff) | |
parent | 705a76d2d22a2824f45f07d023a380293554e989 (diff) | |
download | linux-3b4334e200ba50cd02e53b122ef56214b170ea23.tar.xz |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
Input: tsc2007 - fix locking in hrtimer handler
Input: atkbd - add force release keys quirk for Amilo Xi 3650
Input: ff-memless - fix signed to unsigned bit overflow
Input: joydev - blacklist digitizers
Diffstat (limited to 'drivers/input/touchscreen/tsc2007.c')
-rw-r--r-- | drivers/input/touchscreen/tsc2007.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/input/touchscreen/tsc2007.c b/drivers/input/touchscreen/tsc2007.c index 536668fbda22..948e167557f1 100644 --- a/drivers/input/touchscreen/tsc2007.c +++ b/drivers/input/touchscreen/tsc2007.c @@ -200,8 +200,9 @@ static int tsc2007_read_values(struct tsc2007 *tsc) static enum hrtimer_restart tsc2007_timer(struct hrtimer *handle) { struct tsc2007 *ts = container_of(handle, struct tsc2007, timer); + unsigned long flags; - spin_lock_irq(&ts->lock); + spin_lock_irqsave(&ts->lock, flags); if (unlikely(!ts->get_pendown_state() && ts->pendown)) { struct input_dev *input = ts->input; @@ -222,7 +223,7 @@ static enum hrtimer_restart tsc2007_timer(struct hrtimer *handle) tsc2007_send_event(ts); } - spin_unlock_irq(&ts->lock); + spin_unlock_irqrestore(&ts->lock, flags); return HRTIMER_NORESTART; } |