Re: [PATCH] fix warning and missing failure handling forscsi_add_host in aic7xxx driver

From: James Bottomley
Date: Wed Dec 14 2005 - 02:42:51 EST


On Wed, 2005-12-14 at 00:07 +0100, Jesper Juhl wrote:
> + if (retval) {
> + printk(KERN_ERR "aic7xxx: scsi_add_host failed\n");
> + goto free_and_out;
> + }
> +
> scsi_scan_host(host);
> - return (0);
> +
> +out:
> + return retval;
> +free_and_out:
> + scsi_remove_host(host);
> + goto out;

I'm not incredibly keen on all this jumping around for no reason. If
there's a normal out and an error out, then fine, but in this case the
if (retval) { } could contain the entirety of the error path with an
else for the normal path.

scsi_remove_host() is the wrong API, it should be scsi_host_put() (for
an allocated but un added host).

James


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/