[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20130112.012146.1746775070657245621.davem@davemloft.net>
Date: Sat, 12 Jan 2013 01:21:46 -0800 (PST)
From: David Miller <davem@...emloft.net>
To: sathya.perla@...lex.com
Cc: netdev@...r.kernel.org
Subject: Re: [PATCH net-next] be2net: fix unconditionally returning
IRQ_HANDLED in INTx
From: Sathya Perla <sathya.perla@...lex.com>
Date: Sat, 12 Jan 2013 14:17:02 +0530
> commit e49cc34f introduced an unconditional IRQ_HANDLED return in be_intx()
> to workaround Lancer and BE2 HW issues. This is bad as it prevents the kernel
> from detecting interrupt storms due to broken HW.
>
> The BE2/Lancer HW issues are:
> 1) In Lancer, there is no means for the driver to detect if the interrupt
> belonged to device, other than counting and notifying events.
> 2) In Lancer de-asserting INTx takes a while, causing the INTx irq handler
> to be called multiple times till the de-assert happens.
> 3) In BE2, we see an occasional interrupt even when EQs are unarmed.
>
> Issue (1) can cause the notified events to be orphaned, if NAPI was already
> running.
> This patch fixes this issue by scheduling NAPI only if it is not scheduled
> already. Doing this also takes care of possible events_get() race that may be
> caused due to issue (2) and (3). Also, IRQ_HANDLED is returned only the first
> time zero events are detected.
> (Thanks Ben H. for the feedback and suggestions.)
>
> Signed-off-by: Sathya Perla <sathya.perla@...lex.com>
Any particular reason why we shouldn't put this fix into 'net' instead
of 'net-next'?
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists