Lines Matching refs:disk

148 static inline struct scsi_cd *scsi_cd(struct gendisk *disk)  in scsi_cd()  argument
150 return container_of(disk->private_data, struct scsi_cd, driver); in scsi_cd()
170 static inline struct scsi_cd *scsi_cd_get(struct gendisk *disk) in scsi_cd_get() argument
175 if (disk->private_data == NULL) in scsi_cd_get()
177 cd = scsi_cd(disk); in scsi_cd_get()
378 if (error_sector < get_capacity(cd->disk) && in sr_done()
380 set_capacity(cd->disk, error_sector); in sr_done()
550 static void sr_block_release(struct gendisk *disk, fmode_t mode) in sr_block_release() argument
552 struct scsi_cd *cd = scsi_cd(disk); in sr_block_release()
564 struct gendisk *disk = bdev->bd_disk; in sr_block_ioctl() local
565 struct scsi_cd *cd = scsi_cd(disk); in sr_block_ioctl()
587 ret = scsi_ioctl(sdev, disk, mode, cmd, argp); in sr_block_ioctl()
596 static unsigned int sr_block_check_events(struct gendisk *disk, in sr_block_check_events() argument
602 cd = scsi_cd_get(disk); in sr_block_check_events()
650 struct gendisk *disk; in sr_probe() local
666 disk = __alloc_disk_node(sdev->request_queue, NUMA_NO_NODE, in sr_probe()
668 if (!disk) in sr_probe()
682 disk->major = SCSI_CDROM_MAJOR; in sr_probe()
683 disk->first_minor = minor; in sr_probe()
684 disk->minors = 1; in sr_probe()
685 sprintf(disk->disk_name, "sr%d", minor); in sr_probe()
686 disk->fops = &sr_bdops; in sr_probe()
687 disk->flags = GENHD_FL_CD | GENHD_FL_BLOCK_EVENTS_ON_EXCL_WRITE; in sr_probe()
688 disk->events = DISK_EVENT_MEDIA_CHANGE | DISK_EVENT_EJECT_REQUEST; in sr_probe()
689 disk->event_flags = DISK_EVENT_FLAG_POLL | DISK_EVENT_FLAG_UEVENT; in sr_probe()
694 cd->disk = disk; in sr_probe()
715 set_capacity(disk, cd->capacity); in sr_probe()
716 disk->private_data = &cd->driver; in sr_probe()
718 if (register_cdrom(disk, &cd->cdi)) in sr_probe()
728 disk->flags |= GENHD_FL_REMOVABLE; in sr_probe()
731 error = device_add_disk(&sdev->sdev_gendev, disk, NULL); in sr_probe()
748 put_disk(disk); in sr_probe()
828 set_capacity(cd->disk, cd->capacity); in get_sectorsize()
967 struct gendisk *disk = cdi->disk; in sr_read_cdda_bpc() local
974 rq = scsi_alloc_request(disk->queue, REQ_OP_DRV_IN, 0); in sr_read_cdda_bpc()
979 ret = blk_rq_map_user(disk->queue, rq, NULL, ubuf, len, GFP_KERNEL); in sr_read_cdda_bpc()
997 blk_execute_rq(disk, rq, 0); in sr_read_cdda_bpc()
1027 struct gendisk *disk = cd->disk; in sr_kref_release() local
1030 clear_bit(MINOR(disk_devt(disk)), sr_index_bits); in sr_kref_release()
1035 disk->private_data = NULL; in sr_kref_release()
1037 put_disk(disk); in sr_kref_release()
1050 del_gendisk(cd->disk); in sr_remove()