[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200906021729.58677.isdn@linux-pingi.de>
Date: Tue, 2 Jun 2009 17:29:58 +0200
From: Karsten Keil <isdn@...ux-pingi.de>
To: Andreas Mohr <andi@...as.de>
Cc: linux-kernel@...r.kernel.org
Subject: Re: [PATCH] mISDN GIT: hfcpci cleanup failure on IRQ weirdness
Hi Andreas,
On Dienstag, 2. Juni 2009 15:06:49 Andreas Mohr wrote:
Thanks for discovering this issue.
...
> ChangeLog:
> Make sure to properly bail out (call free_irq())
> after hfcpci interrupt detection failure.
> Improve comment.
>
> Signed-off-by: Andreas Mohr <andi@...as.de>
>
> --- ./drivers/isdn/hardware/mISDN/hfcpci.c.orig 2009-06-02
> 13:54:10.000000000 +0200 +++
> ./drivers/isdn/hardware/mISDN/hfcpci.c 2009-06-02 14:29:20.000000000 +0200
> @@ -1172,7 +1172,7 @@ hfcpci_int(int intno, void *dev_id)
> printk(KERN_DEBUG
> "HFC-PCI: stat(%02x) s1(%02x)\n", stat, val);
> } else {
> - /* shared */
> + /* (shared) IRQ triggered by other device */
> spin_unlock(&hc->lock);
> return IRQ_NONE;
> }
Hmm, I think shared as comment in the IRQ function should be
enough - but I do not complain to a longer comment.
> @@ -1807,8 +1807,7 @@ init_card(struct hfc_pci *hc)
> "HFC PCI: IRQ(%d) getting no interrupts "
> "during init %d\n", hc->irq, 4 - cnt);
> if (cnt == 1) {
> - spin_unlock_irqrestore(&hc->lock, flags);
> - return -EIO;
> + goto fail;
> } else {
> reset_hfcpci(hc);
> cnt--;
easier:
if (cnt == 1)
break;
else {
I will send this patch together with some other ISDN fixes again soon.
Karsten
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists