sbp2: did not clean up after scsi_add_device() failed

If scsi_add_device() at the end of sbp2_start_device() fails, e.g. due to
transport errors during SCSI inquiry, sbp2 needs to log out of the device
and release all associated resources.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Signed-off-by: Jody McIntyre <scjody@modernduck.com>
This commit is contained in:
Stefan Richter 2005-12-12 23:03:30 -05:00 committed by Jody McIntyre
parent 43863eba76
commit dc3edd5412

View file

@ -960,6 +960,8 @@ static int sbp2_start_device(struct scsi_id_instance_data *scsi_id)
error = scsi_add_device(scsi_id->scsi_host, 0, scsi_id->ud->id, 0);
if (error) {
SBP2_ERR("scsi_add_device failed");
sbp2_logout_device(scsi_id);
sbp2_remove_device(scsi_id);
return error;
}