Re: Question about IRQ_PENDING/IRQ_REPLAY

From: Benjamin Herrenschmidt (benh@kernel.crashing.org)
Date: Mon Mar 05 2001 - 16:39:49 EST


>And I seriously doubt that PPC SMP irq handling has gotten _nearly_ the
>amount of testing and hard work that the x86 counterpart has. Things
>like support for CPU affinity, per-irq spinlocks, etc etc.

Some of those are the reason I moved part of the x86 irq.c code to PPC
indeed.

>Now, I'm not saying that irq.c would necessarily work as-is. It probably
>doesn't support all the things that other architectures might need (but
>with three completely different irq controllers on just standard PCs
>alone, I bet it supports most of it), and I know ia64 wants to extend it
>to be more spread out over different CPU's, but most of the high-level
>stuff probably _can_ and should be fairly common.

And I think they are. One thing is that if made "common", do_IRQ have to
be split into an arch-specific function that retrives the irq_number (and
does the ack on some controller), and the actual "dispatch" function that
does all the flags game and calls the handler.

I've slightly extended it using the IRQ_PERCPU flag to prevent IRQ_INPROGRESS
from ever beeing set (a bit hackish but I wanted that for IPIs since they
use ordinary irq_desc structures for us in most cases).

Ben.

-
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/



This archive was generated by hypermail 2b29 : Wed Mar 07 2001 - 21:00:18 EST