[POWERPC] Fix performance regression in IRQ radix tree locking
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>
Mon, 28 Aug 2006 01:17:37 +0000 (11:17 +1000)
committerPaul Mackerras <paulus@samba.org>
Wed, 30 Aug 2006 00:36:16 +0000 (10:36 +1000)
commit8ec8f2e85c6b88b4a1641eb3902275bcf2c6d60a
treeff4d7eacba8c61f9950cbb36b0844ca53546316b
parent4b3afca9345f5beb9c607faeb2aef4f91dd91a13
[POWERPC] Fix performance regression in IRQ radix tree locking

When reworking the powerpc irq code, I figured out that we were using
the radix tree in a racy way. As a temporary fix, I put a spinlock in
there. However, this can have a significant impact on performances. This
patch reworks that to use a smarter technique based on the fact that
what we need is in fact a rwlock with extremely rare writers (thus
optimized for the read path).

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
arch/powerpc/kernel/irq.c