Loading drivers/scsi/hosts.c +13 −11 Original line number Diff line number Diff line Loading @@ -429,6 +429,15 @@ void scsi_unregister(struct Scsi_Host *shost) } EXPORT_SYMBOL(scsi_unregister); static int __scsi_host_match(struct class_device *cdev, void *data) { struct Scsi_Host *p; unsigned short *hostnum = (unsigned short *)data; p = class_to_shost(cdev); return p->host_no == *hostnum; } /** * scsi_host_lookup - get a reference to a Scsi_Host by host no * Loading @@ -439,19 +448,12 @@ EXPORT_SYMBOL(scsi_unregister); **/ struct Scsi_Host *scsi_host_lookup(unsigned short hostnum) { struct class *class = &shost_class; struct class_device *cdev; struct Scsi_Host *shost = ERR_PTR(-ENXIO), *p; struct Scsi_Host *shost = ERR_PTR(-ENXIO); down(&class->sem); list_for_each_entry(cdev, &class->children, node) { p = class_to_shost(cdev); if (p->host_no == hostnum) { shost = scsi_host_get(p); break; } } up(&class->sem); cdev = class_find_child(&shost_class, &hostnum, __scsi_host_match); if (cdev) shost = scsi_host_get(class_to_shost(cdev)); return shost; } Loading Loading
drivers/scsi/hosts.c +13 −11 Original line number Diff line number Diff line Loading @@ -429,6 +429,15 @@ void scsi_unregister(struct Scsi_Host *shost) } EXPORT_SYMBOL(scsi_unregister); static int __scsi_host_match(struct class_device *cdev, void *data) { struct Scsi_Host *p; unsigned short *hostnum = (unsigned short *)data; p = class_to_shost(cdev); return p->host_no == *hostnum; } /** * scsi_host_lookup - get a reference to a Scsi_Host by host no * Loading @@ -439,19 +448,12 @@ EXPORT_SYMBOL(scsi_unregister); **/ struct Scsi_Host *scsi_host_lookup(unsigned short hostnum) { struct class *class = &shost_class; struct class_device *cdev; struct Scsi_Host *shost = ERR_PTR(-ENXIO), *p; struct Scsi_Host *shost = ERR_PTR(-ENXIO); down(&class->sem); list_for_each_entry(cdev, &class->children, node) { p = class_to_shost(cdev); if (p->host_no == hostnum) { shost = scsi_host_get(p); break; } } up(&class->sem); cdev = class_find_child(&shost_class, &hostnum, __scsi_host_match); if (cdev) shost = scsi_host_get(class_to_shost(cdev)); return shost; } Loading