summaryrefslogtreecommitdiffstats
path: root/drivers/block/ll_rw_blk.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/block/ll_rw_blk.c')
-rw-r--r--drivers/block/ll_rw_blk.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/block/ll_rw_blk.c b/drivers/block/ll_rw_blk.c
index 63c5e4b85..431860f44 100644
--- a/drivers/block/ll_rw_blk.c
+++ b/drivers/block/ll_rw_blk.c
@@ -319,9 +319,9 @@ static struct request * __get_request_wait(int n, kdev_t dev)
DECLARE_WAITQUEUE(wait, current);
unsigned long flags;
- add_wait_queue(&wait_for_request, &wait);
+ add_wait_queue_exclusive(&wait_for_request, &wait);
for (;;) {
- current->state = TASK_UNINTERRUPTIBLE;
+ __set_current_state(TASK_UNINTERRUPTIBLE|TASK_EXCLUSIVE);
spin_lock_irqsave(&io_request_lock,flags);
req = get_request(n, dev);
spin_unlock_irqrestore(&io_request_lock,flags);