Lines Matching refs:sdev

70 scsi_dh_find_driver(struct scsi_device *sdev)  in scsi_dh_find_driver()  argument
74 if (scsi_device_tpgs(sdev)) in scsi_dh_find_driver()
78 if (!strncmp(sdev->vendor, b->vendor, strlen(b->vendor)) && in scsi_dh_find_driver()
79 !strncmp(sdev->model, b->model, strlen(b->model))) { in scsi_dh_find_driver()
123 static int scsi_dh_handler_attach(struct scsi_device *sdev, in scsi_dh_handler_attach() argument
131 error = scsi_dh->attach(sdev); in scsi_dh_handler_attach()
149 sdev_printk(KERN_ERR, sdev, "%s: Attach failed (%d)\n", in scsi_dh_handler_attach()
153 sdev->handler = scsi_dh; in scsi_dh_handler_attach()
162 static void scsi_dh_handler_detach(struct scsi_device *sdev) in scsi_dh_handler_detach() argument
164 sdev->handler->detach(sdev); in scsi_dh_handler_detach()
165 sdev_printk(KERN_NOTICE, sdev, "%s: Detached\n", sdev->handler->name); in scsi_dh_handler_detach()
166 module_put(sdev->handler->module); in scsi_dh_handler_detach()
169 void scsi_dh_add_device(struct scsi_device *sdev) in scsi_dh_add_device() argument
174 drv = scsi_dh_find_driver(sdev); in scsi_dh_add_device()
182 (void)scsi_dh_handler_attach(sdev, devinfo); in scsi_dh_add_device()
185 void scsi_dh_release_device(struct scsi_device *sdev) in scsi_dh_release_device() argument
187 if (sdev->handler) in scsi_dh_release_device()
188 scsi_dh_handler_detach(sdev); in scsi_dh_release_device()
252 struct scsi_device *sdev; in scsi_dh_activate() local
255 sdev = scsi_device_from_queue(q); in scsi_dh_activate()
256 if (!sdev) { in scsi_dh_activate()
262 if (!sdev->handler) in scsi_dh_activate()
265 if (sdev->sdev_state == SDEV_CANCEL || in scsi_dh_activate()
266 sdev->sdev_state == SDEV_DEL) in scsi_dh_activate()
270 if (sdev->sdev_state == SDEV_OFFLINE) in scsi_dh_activate()
273 if (sdev->handler->activate) in scsi_dh_activate()
274 err = sdev->handler->activate(sdev, fn, data); in scsi_dh_activate()
277 put_device(&sdev->sdev_gendev); in scsi_dh_activate()
299 struct scsi_device *sdev; in scsi_dh_set_params() local
302 sdev = scsi_device_from_queue(q); in scsi_dh_set_params()
303 if (!sdev) in scsi_dh_set_params()
306 if (sdev->handler && sdev->handler->set_params) in scsi_dh_set_params()
307 err = sdev->handler->set_params(sdev, params); in scsi_dh_set_params()
308 put_device(&sdev->sdev_gendev); in scsi_dh_set_params()
321 struct scsi_device *sdev; in scsi_dh_attach() local
325 sdev = scsi_device_from_queue(q); in scsi_dh_attach()
326 if (!sdev) in scsi_dh_attach()
335 if (sdev->handler) { in scsi_dh_attach()
336 if (sdev->handler != scsi_dh) in scsi_dh_attach()
341 err = scsi_dh_handler_attach(sdev, scsi_dh); in scsi_dh_attach()
344 put_device(&sdev->sdev_gendev); in scsi_dh_attach()
360 struct scsi_device *sdev; in scsi_dh_attached_handler_name() local
363 sdev = scsi_device_from_queue(q); in scsi_dh_attached_handler_name()
364 if (!sdev) in scsi_dh_attached_handler_name()
367 if (sdev->handler) in scsi_dh_attached_handler_name()
368 handler_name = kstrdup(sdev->handler->name, gfp); in scsi_dh_attached_handler_name()
369 put_device(&sdev->sdev_gendev); in scsi_dh_attached_handler_name()