diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/plat-omap/mailbox.c | 12 | ||||
-rw-r--r-- | arch/um/drivers/ubd_kern.c | 3 |
2 files changed, 4 insertions, 11 deletions
diff --git a/arch/arm/plat-omap/mailbox.c b/arch/arm/plat-omap/mailbox.c index 7a1f5c25fd17..40424edae939 100644 --- a/arch/arm/plat-omap/mailbox.c +++ b/arch/arm/plat-omap/mailbox.c | |||
@@ -197,9 +197,7 @@ static void mbox_tx_work(struct work_struct *work) | |||
197 | struct omap_msg_tx_data *tx_data; | 197 | struct omap_msg_tx_data *tx_data; |
198 | 198 | ||
199 | spin_lock(q->queue_lock); | 199 | spin_lock(q->queue_lock); |
200 | rq = elv_next_request(q); | 200 | rq = blk_fetch_request(q); |
201 | if (rq) | ||
202 | blkdev_dequeue_request(rq); | ||
203 | spin_unlock(q->queue_lock); | 201 | spin_unlock(q->queue_lock); |
204 | 202 | ||
205 | if (!rq) | 203 | if (!rq) |
@@ -242,9 +240,7 @@ static void mbox_rx_work(struct work_struct *work) | |||
242 | 240 | ||
243 | while (1) { | 241 | while (1) { |
244 | spin_lock_irqsave(q->queue_lock, flags); | 242 | spin_lock_irqsave(q->queue_lock, flags); |
245 | rq = elv_next_request(q); | 243 | rq = blk_fetch_request(q); |
246 | if (rq) | ||
247 | blkdev_dequeue_request(rq); | ||
248 | spin_unlock_irqrestore(q->queue_lock, flags); | 244 | spin_unlock_irqrestore(q->queue_lock, flags); |
249 | if (!rq) | 245 | if (!rq) |
250 | break; | 246 | break; |
@@ -351,9 +347,7 @@ omap_mbox_read(struct device *dev, struct device_attribute *attr, char *buf) | |||
351 | 347 | ||
352 | while (1) { | 348 | while (1) { |
353 | spin_lock_irqsave(q->queue_lock, flags); | 349 | spin_lock_irqsave(q->queue_lock, flags); |
354 | rq = elv_next_request(q); | 350 | rq = blk_fetch_request(q); |
355 | if (rq) | ||
356 | blkdev_dequeue_request(rq); | ||
357 | spin_unlock_irqrestore(q->queue_lock, flags); | 351 | spin_unlock_irqrestore(q->queue_lock, flags); |
358 | 352 | ||
359 | if (!rq) | 353 | if (!rq) |
diff --git a/arch/um/drivers/ubd_kern.c b/arch/um/drivers/ubd_kern.c index 402ba8f70fc9..aa9e926e13d7 100644 --- a/arch/um/drivers/ubd_kern.c +++ b/arch/um/drivers/ubd_kern.c | |||
@@ -1228,12 +1228,11 @@ static void do_ubd_request(struct request_queue *q) | |||
1228 | while(1){ | 1228 | while(1){ |
1229 | struct ubd *dev = q->queuedata; | 1229 | struct ubd *dev = q->queuedata; |
1230 | if(dev->end_sg == 0){ | 1230 | if(dev->end_sg == 0){ |
1231 | struct request *req = elv_next_request(q); | 1231 | struct request *req = blk_fetch_request(q); |
1232 | if(req == NULL) | 1232 | if(req == NULL) |
1233 | return; | 1233 | return; |
1234 | 1234 | ||
1235 | dev->request = req; | 1235 | dev->request = req; |
1236 | blkdev_dequeue_request(req); | ||
1237 | dev->start_sg = 0; | 1236 | dev->start_sg = 0; |
1238 | dev->end_sg = blk_rq_map_sg(q, req, dev->sg); | 1237 | dev->end_sg = blk_rq_map_sg(q, req, dev->sg); |
1239 | } | 1238 | } |