Lines Matching refs:scsi_dh
127 struct scsi_device_handler *scsi_dh) in scsi_dh_handler_attach() argument
131 if (!try_module_get(scsi_dh->module)) in scsi_dh_handler_attach()
134 error = scsi_dh->attach(sdev); in scsi_dh_handler_attach()
137 scsi_dh->name, error); in scsi_dh_handler_attach()
138 module_put(scsi_dh->module); in scsi_dh_handler_attach()
140 sdev->handler = scsi_dh; in scsi_dh_handler_attach()
164 struct scsi_device_handler *scsi_dh; in store_dh_state() local
175 scsi_dh = scsi_dh_lookup(buf); in store_dh_state()
176 if (!scsi_dh) in store_dh_state()
178 err = scsi_dh_handler_attach(sdev, scsi_dh); in store_dh_state()
253 int scsi_register_device_handler(struct scsi_device_handler *scsi_dh) in scsi_register_device_handler() argument
255 if (__scsi_dh_lookup(scsi_dh->name)) in scsi_register_device_handler()
258 if (!scsi_dh->attach || !scsi_dh->detach) in scsi_register_device_handler()
262 list_add(&scsi_dh->list, &scsi_dh_list); in scsi_register_device_handler()
265 printk(KERN_INFO "%s: device handler registered\n", scsi_dh->name); in scsi_register_device_handler()
278 int scsi_unregister_device_handler(struct scsi_device_handler *scsi_dh) in scsi_unregister_device_handler() argument
280 if (!__scsi_dh_lookup(scsi_dh->name)) in scsi_unregister_device_handler()
284 list_del(&scsi_dh->list); in scsi_unregister_device_handler()
286 printk(KERN_INFO "%s: device handler unregistered\n", scsi_dh->name); in scsi_unregister_device_handler()
391 struct scsi_device_handler *scsi_dh; in scsi_dh_attach() local
398 scsi_dh = scsi_dh_lookup(name); in scsi_dh_attach()
399 if (!scsi_dh) { in scsi_dh_attach()
405 if (sdev->handler != scsi_dh) in scsi_dh_attach()
410 err = scsi_dh_handler_attach(sdev, scsi_dh); in scsi_dh_attach()