From b9df1ef183161170ec813dda483b5f37abcf7fbd Mon Sep 17 00:00:00 2001 From: "Stephen M. Cameron" Date: Tue, 13 Oct 2009 09:18:22 +0200 Subject: [PATCH] --- yaml --- r: 167441 b: refs/heads/master c: 2cfa948c9ea8681e831743a3bb61157f590fa8d8 h: refs/heads/master i: 167439: 24951eee6a53ad7c9c54d05556a4864b7fea52aa v: v3 --- [refs] | 2 +- trunk/drivers/block/cciss.c | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 8a90ce3f8fea..e457156ae1aa 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: c7ebf0657b1f47d85aee8349ed6345d940d7232a +refs/heads/master: 2cfa948c9ea8681e831743a3bb61157f590fa8d8 diff --git a/trunk/drivers/block/cciss.c b/trunk/drivers/block/cciss.c index fb5be2d95d52..52f53c134c5b 100644 --- a/trunk/drivers/block/cciss.c +++ b/trunk/drivers/block/cciss.c @@ -4254,7 +4254,7 @@ static int __devinit cciss_init_one(struct pci_dev *pdev, mutex_init(&hba[i]->busy_shutting_down); if (cciss_pci_init(hba[i], pdev) != 0) - goto clean0; + goto clean_no_release_regions; sprintf(hba[i]->devname, "cciss%d", i); hba[i]->ctlr = i; @@ -4391,13 +4391,14 @@ static int __devinit cciss_init_one(struct pci_dev *pdev, clean1: cciss_destroy_hba_sysfs_entry(hba[i]); clean0: + pci_release_regions(pdev); +clean_no_release_regions: hba[i]->busy_initializing = 0; /* * Deliberately omit pci_disable_device(): it does something nasty to * Smart Array controllers that pci_enable_device does not undo */ - pci_release_regions(pdev); pci_set_drvdata(pdev, NULL); free_hba(i); return -1;