lkml.org 
[lkml]   [2009]   [Jun]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH] mISDN GIT: hfcpci cleanup failure on IRQ weirdness
Date
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@lisas.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





\
 
 \ /
  Last update: 2009-06-02 17:33    [W:0.083 / U:0.740 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site