From: Wei Yongjun <weiyongj...@huawei.com>

free_irq() expects the same device identity that was passed to
corresponding request_irq(), otherwise the IRQ is not freed.

Signed-off-by: Wei Yongjun <weiyongj...@huawei.com>
Signed-off-by: Finn Thain <fth...@telegraphics.com.au>
---

Rebased on jejb-scsi/misc.

diff --git a/drivers/scsi/mac_esp.c b/drivers/scsi/mac_esp.c
index 26c67c4..999699d 100644
--- a/drivers/scsi/mac_esp.c
+++ b/drivers/scsi/mac_esp.c
@@ -587,7 +587,7 @@ static int esp_mac_probe(struct platform_device *dev)
        esp_chips[dev->id] = NULL;
        if (esp_chips[!dev->id] == NULL) {
                spin_unlock(&esp_chips_lock);
-               free_irq(host->irq, esp);
+               free_irq(host->irq, NULL);
        } else
                spin_unlock(&esp_chips_lock);
 fail_free_priv:

Reply via email to