--- /opt/kernel/linux-2.4.0-test9-pre5/drivers/cdrom/sbpcd.c Mon Sep 11 02:49:27 2000 +++ drivers/cdrom/sbpcd.c Thu Sep 21 16:27:09 2000 @@ -4864,10 +4864,6 @@ * */ #undef DEBUG_GTL -static inline void sbpcd_end_request(struct request *req, int uptodate) { - list_add(&req->queue, &req->q->queue_head); - end_request(uptodate); -} /*==========================================================================*/ /* * I/O request routine, called from Linux kernel. @@ -4902,12 +4898,11 @@ #endif INIT_REQUEST; req=CURRENT; /* take out our request so no other */ - blkdev_dequeue_request(req); /* task can fuck it up GTL */ if (req->rq_status == RQ_INACTIVE) - sbpcd_end_request(req, 0); + end_request(req, 0); if (req -> sector == -1) - sbpcd_end_request(req, 0); + end_request(req, 0); spin_unlock_irq(&io_request_lock); down(&ioctl_read_sem); @@ -4949,7 +4944,7 @@ #endif up(&ioctl_read_sem); spin_lock_irq(&io_request_lock); - sbpcd_end_request(req, 1); + end_request(req, 1); goto request_loop; } @@ -4990,7 +4985,7 @@ #endif up(&ioctl_read_sem); spin_lock_irq(&io_request_lock); - sbpcd_end_request(req, 1); + end_request(req, 1); goto request_loop; } } @@ -5006,7 +5001,7 @@ up(&ioctl_read_sem); sbp_sleep(0); /* wait a bit, try again */ spin_lock_irq(&io_request_lock); - sbpcd_end_request(req, 0); + end_request(req, 0); goto request_loop; } /*==========================================================================*/ @@ -5815,7 +5810,6 @@ #endif MODULE } blk_init_queue(BLK_DEFAULT_QUEUE(MAJOR_NR), DEVICE_REQUEST); - blk_queue_headactive(BLK_DEFAULT_QUEUE(MAJOR_NR), 0); read_ahead[MAJOR_NR] = buffers * (CD_FRAMESIZE / 512); request_region(CDo_command,4,major_name);