Lines Matching refs:device

99 static int sg_add_device(struct device *);
100 static void sg_remove_device(struct device *);
104 file descriptor list for device */
141 struct list_head sfd_siblings; /* protected by device's sfd_lock */
142 struct sg_device *parentdp; /* owning device */
162 typedef struct sg_device { /* holds the state of each scsi generic device */
163 struct scsi_device *device;
167 u32 index; /* device index number */
170 atomic_t detaching; /* 0->device usable, 1->device detaching */
210 sdev_prefix_printk(prefix, (sdp)->device, (sdp)->name, fmt, ##a)
218 * userspace (e.g. if a process with access to such a device passes a file
238 if (sfp->parentdp->device->type == TYPE_SCANNER)
303 /* Prevent the device driver from vanishing while we sleep */
304 retval = scsi_device_get(sdp->device);
308 retval = scsi_autopm_get_device(sdp->device);
316 scsi_block_when_processing_errors(sdp->device))) {
318 /* we are in error recovery for this device */
347 q = sdp->device->request_queue;
373 scsi_autopm_put_device(sdp->device);
375 scsi_device_put(sdp->device);
392 scsi_autopm_put_device(sdp->device);
623 scsi_block_when_processing_errors(sdp->device)))
933 if (!scsi_block_when_processing_errors(sdp->device))
983 v.host_no = sdp->device->host->host_no;
984 v.channel = sdp->device->channel;
985 v.scsi_id = sdp->device->id;
986 v.lun = sdp->device->lun;
987 v.scsi_type = sdp->device->type;
988 v.h_cmd_per_lun = sdp->device->host->cmd_per_lun;
989 v.d_queue_depth = sdp->device->queue_depth;
1029 max_sectors_bytes(sdp->device->request_queue));
1045 max_sectors_bytes(sdp->device->request_queue));
1075 val = (sdp->device ? 1 : 0);
1102 return put_user(sdp->device->host->hostt->emulated, ip);
1106 return scsi_ioctl(sdp->device, filp->f_mode & FMODE_WRITE,
1115 return put_user(max_sectors_bytes(sdp->device->request_queue),
1118 return blk_trace_setup(sdp->device->request_queue, sdp->name,
1122 return blk_trace_startstop(sdp->device->request_queue, 1);
1124 return blk_trace_startstop(sdp->device->request_queue, 0);
1126 return blk_trace_remove(sdp->device->request_queue);
1141 result = scsi_ioctl_block_when_processing_errors(sdp->device,
1163 return scsi_ioctl(sdp->device, filp->f_mode & FMODE_WRITE, cmd_in, p);
1336 pr_info("%s: device detaching\n", __func__);
1360 __scsi_print_sense(sdp->device, __func__, sense,
1368 && sdp->device->removable) {
1370 /* may be used if there are filesystems using this device */
1371 sdp->device->changed = 1;
1454 "Unable to attach sg device type=%d, minor number exceeds %d\n",
1469 sdp->device = scsidp;
1492 sg_add_device(struct device *cl_dev)
1527 struct device *sg_class_member;
1570 struct request_queue *q = sdp->device->request_queue;
1573 /* CAUTION! Note that the device can still be found via idr_find()
1592 sg_remove_device(struct device *cl_dev)
1605 return; /* only want to do following once per device */
1738 struct request_queue *q = sfp->parentdp->device->request_queue;
2148 * If the device is detaching, wakeup any readers in case we just
2194 max_sectors_bytes(sdp->device->request_queue));
2236 scsi_device_put(sdp->device);
2490 if ((NULL == sdp) || (NULL == sdp->device) ||
2494 scsidp = sdp->device;
2516 scsidp = sdp ? sdp->device : NULL;
2521 seq_puts(s, "<no active device>\n");
2605 seq_printf(s, " >>> device=%s ", sdp->name);
2608 else if (sdp->device) {
2609 struct scsi_device *scsidp = sdp->device;