From f45c154a5822bbeffa7310153be8216990d12734 Mon Sep 17 00:00:00 2001 From: Peter Waechtler Date: Thu, 28 Apr 2011 20:53:58 +0200 Subject: [PATCH] --- yaml --- r: 248539 b: refs/heads/master c: 06268b2a384ece73618c1ad7649d19905ab79806 h: refs/heads/master i: 248537: 3d1fe58a30a3fc03e0441e68556e680748e08630 248535: 8daa35ba79fa1be67ce6f0cb1d41da5a81171b72 v: v3 --- [refs] | 2 +- trunk/drivers/hid/usbhid/hiddev.c | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 5b77f0d2fcf1..111f340337ec 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 35dca5b4a67a93bbb75c2753d6dc432dc8f82e5d +refs/heads/master: 06268b2a384ece73618c1ad7649d19905ab79806 diff --git a/trunk/drivers/hid/usbhid/hiddev.c b/trunk/drivers/hid/usbhid/hiddev.c index af0a7c1002af..891ff531cf34 100644 --- a/trunk/drivers/hid/usbhid/hiddev.c +++ b/trunk/drivers/hid/usbhid/hiddev.c @@ -367,8 +367,10 @@ static ssize_t hiddev_read(struct file * file, char __user * buffer, size_t coun /* let O_NONBLOCK tasks run */ mutex_unlock(&list->thread_lock); schedule(); - if (mutex_lock_interruptible(&list->thread_lock)) + if (mutex_lock_interruptible(&list->thread_lock)) { + finish_wait(&list->hiddev->wait, &wait); return -EINTR; + } set_current_state(TASK_INTERRUPTIBLE); } finish_wait(&list->hiddev->wait, &wait);