int device, drive, type;
struct archy_floppy_struct *floppy;
- DPRINT(("redo_fd_request: CURRENT=%08lx CURRENT->rq_dev=%04x CURRENT->sector=%ld\n",
- (unsigned long) CURRENT, CURRENT ? CURRENT->rq_dev : 0,
+ DPRINT(("redo_fd_request: CURRENT=%p dev=%s CURRENT->sector=%ld\n",
+ CURRENT, CURRENT ? CURRENT->rq_disk->disk_name : "",
!blk_queue_empty(QUEUE) ? CURRENT->sector : 0));
repeat:
if (blk_queue_empty(QUEUE))
goto the_end;
- if (major(CURRENT->rq_dev) != MAJOR_NR)
- panic(DEVICE_NAME ": request list destroyed");
-
- if (CURRENT->bh) {
- if (!buffer_locked(CURRENT->bh))
- panic(DEVICE_NAME ": block not locked");
- }
device = minor(CURRENT->rq_dev);
drive = device & 3;
type = device >> 2;
{
int device, drive, type;
- DPRINT(("redo_fd_request: CURRENT=%08lx CURRENT->dev=%04x CURRENT->sector=%ld\n",
- (unsigned long)CURRENT, !blk_queue_empty(QUEUE) ? CURRENT->rq_dev : 0,
+ DPRINT(("redo_fd_request: CURRENT=%p dev=%s CURRENT->sector=%ld\n",
+ CURRENT, !blk_queue_empty(QUEUE) ? CURRENT->rq_disk->disk_name : "",
!blk_queue_empty(QUEUE) ? CURRENT->sector : 0 ));
IsFormatting = 0;
if (blk_queue_empty(QUEUE))
goto the_end;
- if (major(CURRENT->rq_dev) != MAJOR_NR)
- panic(DEVICE_NAME ": request list destroyed");
-
device = minor(CURRENT->rq_dev);
drive = device & 3;
type = device >> 2;
if (creq->nr_phys_segments > SG_MAX)
BUG();
- if (h->ctlr != major(creq->rq_dev)-MAJOR_NR || h->ctlr > nr_ctlr)
- {
- printk(KERN_WARNING "doreq cmd for %d, %x at %p\n",
- h->ctlr, minor(creq->rq_dev), creq);
- blkdev_dequeue_request(creq);
- complete_buffers(creq->bio, 0);
- end_that_request_last(creq);
- goto startio;
- }
-
if ((c = cmd_alloc(h,1)) == NULL)
goto startio;
blkdev_dequeue_request(creq);
c->ctlr = h->ctlr;
- c->hdr.unit = minor(creq->rq_dev) >> NWD_SHIFT;
+ c->hdr.unit = (drv_info_t *)(creq->rq_disk->private_data) - h->drv;
c->hdr.size = sizeof(rblk_t) >> 2;
c->size += sizeof(rblk_t);
req = elv_next_request(q);
#if 0
- printk("%s:got request. device : %d minor : %d command : %d sector : %ld count : %ld, buffer: %p\n",
+ printk("%s:got request. device : %s command : %d sector : %ld count : %ld, buffer: %p\n",
DEVICE_NAME,
- DEVICE_NR(req->rq_dev), minor(req->rq_dev),
+ req->rq_disk->disk_name,
req->cmd, req->sector,
req->current_nr_sectors, req->buffer);
#endif
return;
}
while (!blk_queue_empty(QUEUE) && fs->state == idle) {
- if (MAJOR(CURRENT->rq_dev) != MAJOR_NR)
- panic(DEVICE_NAME ": request list destroyed");
if (CURRENT->bh && !buffer_locked(CURRENT->bh))
panic(DEVICE_NAME ": block not locked");
#if 0
- printk("do_fd_req: dev=%x cmd=%d sec=%ld nr_sec=%ld buf=%p\n",
- kdev_t_to_nr(CURRENT->rq_dev), CURRENT->cmd,
+ printk("do_fd_req: dev=%s cmd=%d sec=%ld nr_sec=%ld buf=%p\n",
+ CURRENT->rq_disk->disk_name, CURRENT->cmd,
CURRENT->sector, CURRENT->nr_sectors, CURRENT->buffer);
printk(" rq_status=%d errors=%d current_nr_sectors=%ld\n",
CURRENT->rq_status, CURRENT->errors, CURRENT->current_nr_sectors);
while (!blk_queue_empty(&mtd_queue)) {
struct request *req = elv_next_request(&mtd_queue);
spin_unlock_irq(mtd_queue.queue_lock);
- mtdblk = mtdblks[minor(req->rq_dev)];
+ struct mtdblk_dev **p = req->rq_disk->private_data;
+ mtdblk = *p;
res = 0;
- if (minor(req->rq_dev) >= MAX_MTD_DEVICES)
- panic("handle_mtdblock_request: minor out of bound");
-
if (! (req->flags & REQ_CMD))
goto end_req;
mtddisk[mtd->index] = disk;
set_capacity(disk, mtd->size / 512);
+ disk->private_data = &mtdblks[mtd->index];
disk->queue = &mtd_queue;
add_disk(disk);
}