block: implement and enforce request peek/start/fetch
[safe/jmp/linux-2.6] / drivers / cdrom / viocd.c
index bbe9f08..ca741c2 100644 (file)
@@ -297,9 +297,7 @@ static void do_viocd_request(struct request_queue *q)
 {
        struct request *req;
 
-       while ((rwreq == 0) && ((req = elv_next_request(q)) != NULL)) {
-               blkdev_dequeue_request(req);
-
+       while ((rwreq == 0) && ((req = blk_fetch_request(q)) != NULL)) {
                if (!blk_fs_request(req))
                        __blk_end_request_all(req, -EIO);
                else if (send_request(req) < 0) {