linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/5] Message signaled irq handling cleanups
@ 2006-09-27 19:54 Eric W. Biederman
  2006-09-27 22:57 ` Andi Kleen
  0 siblings, 1 reply; 8+ messages in thread
From: Eric W. Biederman @ 2006-09-27 19:54 UTC (permalink / raw)
  To: Andrew Morton
  Cc: linux-kernel, Ingo Molnar, Luck, Tony, Andi Kleen,
	Benjamin Herrenschmidt


The following patch set should be enough to clear up the
outstanding issues with genirq on i386 and x86_64.  This actually
takes things a step farther and moves all of architecture
dependencies I could find into the appropriate architecture.

So hopefully we are finally close enough that other architectures
will be able implement msi support, without too much trouble.

msi: Simplify msi sanity checks by adding with generic irq code.
msi: Only use a single irq_chip for msi interrupts
msi: Refactor and move the msi irq_chip into the arch code.
msi: Move the ia64 code into arch/ia64
htirq: Tidy up the htirq code

Eric

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 0/5] Message signaled irq handling cleanups
  2006-09-27 19:54 [PATCH 0/5] Message signaled irq handling cleanups Eric W. Biederman
@ 2006-09-27 22:57 ` Andi Kleen
  2006-09-28  4:02   ` Eric W. Biederman
  0 siblings, 1 reply; 8+ messages in thread
From: Andi Kleen @ 2006-09-27 22:57 UTC (permalink / raw)
  To: Eric W. Biederman
  Cc: Andrew Morton, linux-kernel, Ingo Molnar, Tony, Benjamin Herrenschmidt

On Wednesday 27 September 2006 21:54, Eric W. Biederman wrote:
> 
> The following patch set should be enough to clear up the
> outstanding issues with genirq on i386 and x86_64.  This actually
> takes things a step farther and moves all of architecture
> dependencies I could find into the appropriate architecture.
> 
> So hopefully we are finally close enough that other architectures
> will be able implement msi support, without too much trouble.
> 
> msi: Simplify msi sanity checks by adding with generic irq code.
> msi: Only use a single irq_chip for msi interrupts
> msi: Refactor and move the msi irq_chip into the arch code.
> msi: Move the ia64 code into arch/ia64
> htirq: Tidy up the htirq code


The (small) x86-64 parts are fine by me. Thanks.

-Andi

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 0/5] Message signaled irq handling cleanups
  2006-09-27 22:57 ` Andi Kleen
@ 2006-09-28  4:02   ` Eric W. Biederman
  0 siblings, 0 replies; 8+ messages in thread
From: Eric W. Biederman @ 2006-09-28  4:02 UTC (permalink / raw)
  To: Andi Kleen
  Cc: Andrew Morton, linux-kernel, Ingo Molnar, Tony, Benjamin Herrenschmidt

Andi Kleen <ak@suse.de> writes:

> On Wednesday 27 September 2006 21:54, Eric W. Biederman wrote:
>> 
>> The following patch set should be enough to clear up the
>> outstanding issues with genirq on i386 and x86_64.  This actually
>> takes things a step farther and moves all of architecture
>> dependencies I could find into the appropriate architecture.
>> 
>> So hopefully we are finally close enough that other architectures
>> will be able implement msi support, without too much trouble.
>> 
>> msi: Simplify msi sanity checks by adding with generic irq code.
>> msi: Only use a single irq_chip for msi interrupts
>> msi: Refactor and move the msi irq_chip into the arch code.
>> msi: Move the ia64 code into arch/ia64
>> htirq: Tidy up the htirq code
>
>
> The (small) x86-64 parts are fine by me. Thanks.

Note this should allow the hack in -mm that disables stack switch
with 4K stacks on i386 to be dropped.

Eric


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 0/5] Message signaled irq handling cleanups
  2006-09-27 22:36 ` Benjamin Herrenschmidt
@ 2006-09-27 22:51   ` Benjamin Herrenschmidt
  0 siblings, 0 replies; 8+ messages in thread
From: Benjamin Herrenschmidt @ 2006-09-27 22:51 UTC (permalink / raw)
  To: Eric W. Biederman
  Cc: Andrew Morton, linux-kernel, Ingo Molnar, Luck, Tony, Andi Kleen,
	Michael Ellerman


> At this point, best is that we finish a working implementation based on
> Michael reworked core for PowerPC (which is currently located in
> arch/powerpc and doesn't exclude whatever sits in drivers/pci/ except
> that we don't build the later on PowerPC) so you can see more what our
> approach looks like and why we need to go that way.

Don't look for it in the tree btw, it's not beem merged, though Michael
posted some versions to linuxppc-dev.

Ben.



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 0/5] Message signaled irq handling cleanups
  2006-09-27 19:55 Eric W. Biederman
  2006-09-27 20:29 ` Eric W. Biederman
@ 2006-09-27 22:36 ` Benjamin Herrenschmidt
  2006-09-27 22:51   ` Benjamin Herrenschmidt
  1 sibling, 1 reply; 8+ messages in thread
From: Benjamin Herrenschmidt @ 2006-09-27 22:36 UTC (permalink / raw)
  To: Eric W. Biederman
  Cc: Andrew Morton, linux-kernel, Ingo Molnar, Luck, Tony, Andi Kleen,
	Michael Ellerman


> So hopefully we are finally close enough that other architectures
> will be able implement msi support, without too much trouble.
> 
> msi: Simplify msi sanity checks by adding with generic irq code.
> msi: Only use a single irq_chip for msi interrupts
> msi: Refactor and move the msi irq_chip into the arch code.
> msi: Move the ia64 code into arch/ia64
> htirq: Tidy up the htirq code

Heh ! And Michael was just coming up with a rewritten MSI core for
PowerPC :) Oh well... I'll dig through your patches.

My main problem is that you have thus dynamic_irq stuff in the generic
code. I just can't see any way that code can apply to me in any shape or
form. PowerPC has a virtual IRQ layer that remaps linux IRQs to
controller/line pairs to handle multiple controllers etc... thus we have
some primitives for allocating virtual irqs and binding them to a
controller etc... 

I have the feeling that this dynamic_irq_* thing you introduced will not
only not work properly for us but can't be made to work in our context,
not with the current API and not with any "generic" non platform
specific API.

Also we need to have different low level callbacks for different busses
in the system for the various bits, ranging from allocating & providing
up the irq_chip, to setting up the MSI. Unfortunately, even your
reworked code just don't fit our needs at the moment in that area. Also,
you hijack irq data which we can't do as it can/will be used by our PIC
code that actually gets the MSIs on some machines (they are just routed
to it as normal irqs) etc....

At this point, best is that we finish a working implementation based on
Michael reworked core for PowerPC (which is currently located in
arch/powerpc and doesn't exclude whatever sits in drivers/pci/ except
that we don't build the later on PowerPC) so you can see more what our
approach looks like and why we need to go that way.

Ben.





^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 0/5] Message signaled irq handling cleanups
  2006-09-27 19:55 Eric W. Biederman
@ 2006-09-27 20:29 ` Eric W. Biederman
  2006-09-27 22:36 ` Benjamin Herrenschmidt
  1 sibling, 0 replies; 8+ messages in thread
From: Eric W. Biederman @ 2006-09-27 20:29 UTC (permalink / raw)
  To: Andrew Morton
  Cc: linux-kernel, Ingo Molnar, Luck, Tony, Andi Kleen,
	Benjamin Herrenschmidt

ebiederm@xmission.com (Eric W. Biederman) writes:

> The following patch set should be enough to clear up the
> outstanding issues with genirq on i386 and x86_64.  This actually
> takes things a step farther and moves all of architecture
> dependencies I could find into the appropriate architecture.
>
> So hopefully we are finally close enough that other architectures
> will be able implement msi support, without too much trouble.
>
> msi: Simplify msi sanity checks by adding with generic irq code.
> msi: Only use a single irq_chip for msi interrupts
> msi: Refactor and move the msi irq_chip into the arch code.
> msi: Move the ia64 code into arch/ia64
> htirq: Tidy up the htirq code
>
> Eric

Grr.. My ia64 compiler is way too slow.  It just told me I had some
trivial bugs in the altix portion of what I posted.   Sorry I forgot
to mention all I can do is compile test ia64.

So here comes a second time with code that actually compiles :)

Darn this code that is so ugly that you have to test the cleanup on
multiple architectures!

Eric

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH 0/5] Message signaled irq handling cleanups
@ 2006-09-27 19:55 Eric W. Biederman
  2006-09-27 20:29 ` Eric W. Biederman
  2006-09-27 22:36 ` Benjamin Herrenschmidt
  0 siblings, 2 replies; 8+ messages in thread
From: Eric W. Biederman @ 2006-09-27 19:55 UTC (permalink / raw)
  To: Andrew Morton
  Cc: linux-kernel, Ingo Molnar, Luck, Tony, Andi Kleen,
	Benjamin Herrenschmidt


The following patch set should be enough to clear up the
outstanding issues with genirq on i386 and x86_64.  This actually
takes things a step farther and moves all of architecture
dependencies I could find into the appropriate architecture.

So hopefully we are finally close enough that other architectures
will be able implement msi support, without too much trouble.

msi: Simplify msi sanity checks by adding with generic irq code.
msi: Only use a single irq_chip for msi interrupts
msi: Refactor and move the msi irq_chip into the arch code.
msi: Move the ia64 code into arch/ia64
htirq: Tidy up the htirq code

Eric

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH 0/5] Message signaled irq handling cleanups
@ 2006-09-27 19:54 Eric W. Biederman
  0 siblings, 0 replies; 8+ messages in thread
From: Eric W. Biederman @ 2006-09-27 19:54 UTC (permalink / raw)
  To: Andrew Morton
  Cc: linux-kernel, Ingo Molnar, Luck, Tony <tony.luck@intel.com>,
	Andi Kleen, Benjamin Herrenschmidt


The following patch set should be enough to clear up the
outstanding issues with genirq on i386 and x86_64.  This actually
takes things a step farther and moves all of architecture
dependencies I could find into the appropriate architecture.

So hopefully we are finally close enough that other architectures
will be able implement msi support, without too much trouble.

msi: Simplify msi sanity checks by adding with generic irq code.
msi: Only use a single irq_chip for msi interrupts
msi: Refactor and move the msi irq_chip into the arch code.
msi: Move the ia64 code into arch/ia64
htirq: Tidy up the htirq code

Eric

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2006-09-28  4:03 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-09-27 19:54 [PATCH 0/5] Message signaled irq handling cleanups Eric W. Biederman
2006-09-27 22:57 ` Andi Kleen
2006-09-28  4:02   ` Eric W. Biederman
2006-09-27 19:54 Eric W. Biederman
2006-09-27 19:55 Eric W. Biederman
2006-09-27 20:29 ` Eric W. Biederman
2006-09-27 22:36 ` Benjamin Herrenschmidt
2006-09-27 22:51   ` Benjamin Herrenschmidt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).