From 4c72db11774e787fe0d9eaa2caeb23fef4754385 Mon Sep 17 00:00:00 2001 From: Dima Zavin Date: Fri, 30 Dec 2011 15:16:44 -0800 Subject: [PATCH] --- yaml --- r: 282415 b: refs/heads/master c: 509f87c5f564627b6b9fc763e74ef3608213d610 h: refs/heads/master i: 282413: 47ceeb4fb10e058f1aa28f0525a1dae63fd348f0 282411: ec5d76f093e4c453bf059e301ba0899c0cc4f723 282407: 67fd7d84d41911141bdbd0075dc355dd8cb73540 282399: 269b66d93447ef31857d4b9bef85c3ff823db13c v: v3 --- [refs] | 2 +- trunk/drivers/input/evdev.c | 15 +++++++-------- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/[refs] b/[refs] index 2bfa4ed71e62..4bf6422f1c0e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e90f869cae3b4aedf0f6d2ca8048d60245ee77f7 +refs/heads/master: 509f87c5f564627b6b9fc763e74ef3608213d610 diff --git a/trunk/drivers/input/evdev.c b/trunk/drivers/input/evdev.c index a9d871651ce7..76457d50bc34 100644 --- a/trunk/drivers/input/evdev.c +++ b/trunk/drivers/input/evdev.c @@ -391,14 +391,13 @@ static ssize_t evdev_read(struct file *file, char __user *buffer, if (count < input_event_size()) return -EINVAL; - if (client->packet_head == client->tail && evdev->exist && - (file->f_flags & O_NONBLOCK)) - return -EAGAIN; - - retval = wait_event_interruptible(evdev->wait, - client->packet_head != client->tail || !evdev->exist); - if (retval) - return retval; + if (!(file->f_flags & O_NONBLOCK)) { + retval = wait_event_interruptible(evdev->wait, + client->packet_head != client->tail || + !evdev->exist); + if (retval) + return retval; + } if (!evdev->exist) return -ENODEV;