Lines Matching refs:disk
140 static inline struct scsi_cd *scsi_cd(struct gendisk *disk) in scsi_cd() argument
142 return disk->private_data; in scsi_cd()
302 struct scsi_cd *cd = scsi_cd(rq->q->disk); in sr_done()
342 if (error_sector < get_capacity(cd->disk) && in sr_done()
344 set_capacity(cd->disk, error_sector); in sr_done()
369 cd = scsi_cd(rq->q->disk); in sr_init_command()
495 static int sr_block_open(struct gendisk *disk, blk_mode_t mode) in sr_block_open() argument
497 struct scsi_cd *cd = scsi_cd(disk); in sr_block_open()
505 if (disk_check_media_change(disk)) { in sr_block_open()
521 static void sr_block_release(struct gendisk *disk) in sr_block_release() argument
523 struct scsi_cd *cd = scsi_cd(disk); in sr_block_release()
566 static unsigned int sr_block_check_events(struct gendisk *disk, in sr_block_check_events() argument
569 struct scsi_cd *cd = disk->private_data; in sr_block_check_events()
576 static void sr_free_disk(struct gendisk *disk) in sr_free_disk() argument
578 struct scsi_cd *cd = disk->private_data; in sr_free_disk()
581 clear_bit(MINOR(disk_devt(disk)), sr_index_bits); in sr_free_disk()
622 struct gendisk *disk; in sr_probe() local
636 disk = blk_mq_alloc_disk_for_queue(sdev->request_queue, in sr_probe()
638 if (!disk) in sr_probe()
652 disk->major = SCSI_CDROM_MAJOR; in sr_probe()
653 disk->first_minor = minor; in sr_probe()
654 disk->minors = 1; in sr_probe()
655 sprintf(disk->disk_name, "sr%d", minor); in sr_probe()
656 disk->fops = &sr_bdops; in sr_probe()
657 disk->flags |= GENHD_FL_REMOVABLE | GENHD_FL_NO_PART; in sr_probe()
658 disk->events = DISK_EVENT_MEDIA_CHANGE | DISK_EVENT_EJECT_REQUEST; in sr_probe()
659 disk->event_flags = DISK_EVENT_FLAG_POLL | DISK_EVENT_FLAG_UEVENT | in sr_probe()
665 cd->disk = disk; in sr_probe()
686 set_capacity(disk, cd->capacity); in sr_probe()
687 disk->private_data = cd; in sr_probe()
689 if (register_cdrom(disk, &cd->cdi)) in sr_probe()
703 error = device_add_disk(&sdev->sdev_gendev, disk, NULL); in sr_probe()
720 put_disk(disk); in sr_probe()
801 set_capacity(cd->disk, cd->capacity); in get_sectorsize()
938 struct gendisk *disk = cdi->disk; in sr_read_cdda_bpc() local
945 rq = scsi_alloc_request(disk->queue, REQ_OP_DRV_IN, 0); in sr_read_cdda_bpc()
950 ret = blk_rq_map_user(disk->queue, rq, NULL, ubuf, len, GFP_KERNEL); in sr_read_cdda_bpc()
991 del_gendisk(cd->disk); in sr_remove()
992 put_disk(cd->disk); in sr_remove()