lkml.org 
[lkml]   [2006]   [Nov]   [13]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: 2.6.19-rc5: known regressions :SMP kernel can not generate ISA irq
FromIngo Molnar <>
DateMon, 13 Nov 2006 21:44:37 +0100
On Mon, 2006-11-13 at 10:11 -0700, Eric W. Biederman wrote:
> > So when you "mask" an edge-triggered IRQ, you can't really mask it
> at all, 
> > because if you did that, you'd lose it forever if the IRQ comes in
> while 
> > you masked it. Instead, we're supposed to leave it active, and set a
> flag, 
> > and IF the IRQ comes in, we just remember it, and mask it at that
> point 
> > instead, and then on unmasking, we have to replay it by sending a 
> > self-IPI.
> >
> > Maybe that part got broken by some of the IRQ changes by Eric. 
> 
> Hmm.  The other possibility is that this is a genirq migration issue.
> 
> Yep.  That looks like it.   In the genirq migration the edge and
> level triggered cases got merged and previously disable_edge_ioapic
> was a noop.  Ouch.

hm, that should be solved by the generic edge-triggered flow handler as
well: we never mask an IRQ first time around, we only mask it if
we /already/ have the 'soft' IRQ_PENDING flag set. (in that case the
lost edge is not an issue because we have the information already - and
the masking will prevent a screaming edge source)

but maybe this concept has not been pushed through to the disable/enable
irq logic itself? (it's only present in the flow handler) Thomas, do you
concur?

	Ingo

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2006-11-13 21:49    [from the cache]
©2003-2008