[SCSI] zfcp: proper use of device register

Don't use kfree directly after device registration started.

Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Christof Schmitt <christof.schmitt@de.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
This commit is contained in:
Sebastian Ott 2009-08-18 15:43:29 +02:00 committed by James Bottomley
parent 24680defdb
commit f4395b6526
1 changed files with 8 additions and 4 deletions

View File

@ -309,8 +309,10 @@ struct zfcp_unit *zfcp_unit_enqueue(struct zfcp_port *port, u64 fcp_lun)
}
read_unlock_irq(&zfcp_data.config_lock);
if (device_register(&unit->sysfs_device))
goto err_out_free;
if (device_register(&unit->sysfs_device)) {
put_device(&unit->sysfs_device);
return ERR_PTR(-EINVAL);
}
if (sysfs_create_group(&unit->sysfs_device.kobj,
&zfcp_sysfs_unit_attrs)) {
@ -675,8 +677,10 @@ struct zfcp_port *zfcp_port_enqueue(struct zfcp_adapter *adapter, u64 wwpn,
}
read_unlock_irq(&zfcp_data.config_lock);
if (device_register(&port->sysfs_device))
goto err_out_free;
if (device_register(&port->sysfs_device)) {
put_device(&port->sysfs_device);
goto err_out;
}
retval = sysfs_create_group(&port->sysfs_device.kobj,
&zfcp_sysfs_port_attrs);