Re: [PATCH]Add scsi_add_host() failure handling for nsp32

From: GOTO Masanori
Date: Thu Jan 12 2006 - 10:58:55 EST


Dear Jesper,

At Tue, 10 Jan 2006 14:11:52 +0100,
Jesper Juhl wrote:
> Add scsi_add_host() failure handling for nsp32
> and silence warning.
> drivers/scsi/nsp32.c:2888: warning: ignoring return value of csi_add_host', declared with attribute warn_unused_result

Thanks for your report and patch. However, I think your patch is not
complete because the error route needs some additional clean up code.

> #if (LINUX_VERSION_CODE > KERNEL_VERSION(2,5,73))
> - scsi_add_host (host, &PCIDEV->dev);
> + ret = scsi_add_host (host, &PCIDEV->dev);
> + if (ret) {
> + printk(KERN_WARNING "nsp32: scsi_add_host failed\n");
> + scsi_host_put(host);
> + return ret;
> + }

How about this patch instead?

-- gotom

Signed-off-by: GOTO Masanori <gotom@xxxxxxxxxx>

--- drivers/scsi/nsp32.c.gotom 2006-01-13 00:41:09.000000000 +0900
+++ drivers/scsi/nsp32.c 2006-01-13 00:54:26.661567144 +0900
@@ -2885,12 +2885,19 @@
}

#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,5,73))
- scsi_add_host (host, &PCIDEV->dev);
+ ret = scsi_add_host(host, &PCIDEV->dev);
+ if (ret) {
+ nsp32_msg(KERN_ERR, "failed to add scsi host");
+ goto free_region;
+ }
scsi_scan_host(host);
#endif
pci_set_drvdata(PCIDEV, host);
return DETECT_OK;

+ free_region:
+ release_region(host->io_port, host->n_io_port);
+
free_irq:
free_irq(host->irq, data);

-
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/