diff options
author | Ingo Molnar <mingo@kernel.org> | 2013-10-09 14:36:13 +0400 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2013-10-09 14:36:13 +0400 |
commit | 37bf06375c90a42fe07b9bebdb07bc316ae5a0ce (patch) | |
tree | de572dd6d3955b0725001776a7b03796f99e1e8e /drivers/misc/mei/bus.c | |
parent | 6bfa687c19b7ab8adee03f0d43c197c2945dd869 (diff) | |
parent | d0e639c9e06d44e713170031fe05fb60ebe680af (diff) | |
download | linux-37bf06375c90a42fe07b9bebdb07bc316ae5a0ce.tar.xz |
Merge tag 'v3.12-rc4' into sched/core
Merge Linux v3.12-rc4 to fix a conflict and also to refresh the tree
before applying more scheduler patches.
Conflicts:
arch/avr32/include/asm/Kbuild
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'drivers/misc/mei/bus.c')
-rw-r--r-- | drivers/misc/mei/bus.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/misc/mei/bus.c b/drivers/misc/mei/bus.c index 6d0282c08a06..cd2033cd7120 100644 --- a/drivers/misc/mei/bus.c +++ b/drivers/misc/mei/bus.c @@ -297,10 +297,13 @@ int __mei_cl_recv(struct mei_cl *cl, u8 *buf, size_t length) if (cl->reading_state != MEI_READ_COMPLETE && !waitqueue_active(&cl->rx_wait)) { + mutex_unlock(&dev->device_lock); if (wait_event_interruptible(cl->rx_wait, - (MEI_READ_COMPLETE == cl->reading_state))) { + cl->reading_state == MEI_READ_COMPLETE || + mei_cl_is_transitioning(cl))) { + if (signal_pending(current)) return -EINTR; return -ERESTARTSYS; |