[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20070726.161441.38711978.davem@davemloft.net>
Date: Thu, 26 Jul 2007 16:14:41 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: torvalds@...ux-foundation.org
Cc: matthew@....cx, mingo@...e.hu, linux-kernel@...r.kernel.org
Subject: Re: IRQF_DISABLED problem
From: Linus Torvalds <torvalds@...ux-foundation.org>
Date: Thu, 26 Jul 2007 16:04:42 -0700 (PDT)
> Quite frankly, my preference would be (a) followed by (e) or (f), and
> (b)-(d) are in my opinion the worst of the lot with no upsides at all (and
> (b) in particular is pretty much _guaranteed_ to break existing setups).
I look at some cases, such as EHEA on powerpc which is a pretty
modern driver written by not clueless folks, and wonder if they
do it because they know the IRQ is non-shared, they know their
interrupt handler is insanely simple and short, and just want to
avoid the overhead of that sti()/cli() in the caller.
All the EHEA interrupt handler does is unconditionally set a state bit
and schedule a softirq, then return.
The powerpc folks do delayed IRQ enable/disable using software state,
but perhaps these drivers were written before that.
-
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