Messages in this thread |  | | Date | Wed, 26 Sep 2001 19:55:13 +0100 | From | Russell King <> | Subject | Re: [patch] softirq performance fixes, cleanups, 2.4.10. |
| |
On Wed, Sep 26, 2001 at 06:44:03PM +0200, Ingo Molnar wrote: > - the generic definition of __cpu_raise_softirq() used to override > any lowlevel definitions done in asm/softirq.h. It's now conditional so > the architecture definitions should actually be used.
Ingo,
The generic definition is the one to use - we used to allow __cpu_raise_softirq from outside IRQ context, but all RISC architectures ended up with code as follows:
restore irqs save + disable irqs set bit restore irqs
In the latest kernels, you will notice that __cpu_raise_softirq is always within an IRQ protected region (thanks to Andrea for that work), so there is no reason for it to protected itself from interrupts. Hence the comment above cpu_raise_softirq:
* This function must run with irq disabled!
-- Russell King (rmk@arm.linux.org.uk) The developer of ARM Linux http://www.arm.linux.org.uk/personal/aboutme.html
- 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/
|  |