From 7ebb093fd902ba7cada4ed431394d47bac1ca779 Mon Sep 17 00:00:00 2001 From: Jeff Garzik Date: Wed, 8 Nov 2006 19:56:19 -0800 Subject: [PATCH] --- yaml --- r: 42427 b: refs/heads/master c: 08157cd0787004e2ebf9ee8cc92257244da53848 h: refs/heads/master i: 42425: 95d7886c3a8d796cd159aaf975448c93a435a14e 42423: 202e98cb02dafa4e7ee0b9791c671c2ba93b3bc5 v: v3 --- [refs] | 2 +- trunk/drivers/scsi/aha1740.c | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 474f27b65e76..61a363b52932 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 42252854011b31fe63ffeca44ac941e6fe8277ae +refs/heads/master: 08157cd0787004e2ebf9ee8cc92257244da53848 diff --git a/trunk/drivers/scsi/aha1740.c b/trunk/drivers/scsi/aha1740.c index c3c38a7e8d32..d7af9c63a04d 100644 --- a/trunk/drivers/scsi/aha1740.c +++ b/trunk/drivers/scsi/aha1740.c @@ -586,7 +586,7 @@ static struct scsi_host_template aha1740_template = { static int aha1740_probe (struct device *dev) { - int slotbase; + int slotbase, rc; unsigned int irq_level, irq_type, translation; struct Scsi_Host *shpnt; struct aha1740_hostdata *host; @@ -641,10 +641,16 @@ static int aha1740_probe (struct device *dev) } eisa_set_drvdata (edev, shpnt); - scsi_add_host (shpnt, dev); /* XXX handle failure */ + + rc = scsi_add_host (shpnt, dev); + if (rc) + goto err_irq; + scsi_scan_host (shpnt); return 0; + err_irq: + free_irq(irq_level, shpnt); err_unmap: dma_unmap_single (&edev->dev, host->ecb_dma_addr, sizeof (host->ecb), DMA_BIDIRECTIONAL);