Skip to contentSkip to conversation

Function / prototype mismatch

PATCH In review Thomas Koeller 3 participants 6 messages Nov 9, 2004 MIPS

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Function / prototype mismatch

The definition of do_IRQ() in arch/mips/kernel/irq.c does not match the prototype in include/asm-mips/irq.h, resulting in a compile error.

tk

arch/mips/kernel/irq.c +1 -1
@@ -45,7 +45,7 @@
  * SMP cross-CPU interrupts have their own specific
  * handlers).
  */
-asmlinkage unsigned int do_IRQ(unsigned int irq, struct pt_regs *regs)
+asmlinkage unsigned int do_IRQ(int irq, struct pt_regs *regs)
 {
 	irq_enter();
 
Signature · 9 lines
--------------------------------------------------

Thomas Koeller, Software Development
Basler Vision Technologies

thomas dot koeller at baslerweb dot com
http://www.baslerweb.com

==============================
#1 lore raw
Quoted 3 lines · Thomas Koeller

The definition of do_IRQ() in arch/mips/kernel/irq.c does not match the prototype in include/asm-mips/irq.h, resulting in a compile error.

<hint>
might be worse to switch mips to the generic kernel/irq/ code whicg gets this right
</hint>

#2 lore raw
Quoted 4 lines · Christoph Hellwig

<hint>
might be worse to switch mips to the generic kernel/irq/ code whicg gets this right
</hint>

<hint>
This has long happened and generic irq code doesn't even cover do_IRQ. </hint>

Ralf

#3 lore raw
Quoted 9 lines · Ralf Baechle
Quoted 4 lines · Christoph Hellwig

<hint>
might be worse to switch mips to the generic kernel/irq/ code whicg gets this right
</hint>

<hint>
This has long happened and generic irq code doesn't even cover do_IRQ.

Well, 90% of it as __do_IRQ ;-)

#4 lore raw
Quoted 1 line · Christoph Hellwig

Well, 90% of it as __do_IRQ ;-)

Would seem natural to have the same prototype for both, wouldn't it?

Ralf

#5 lore raw
In reply to Thomas Koeller
Quoted 3 lines · Thomas Koeller

The definition of do_IRQ() in arch/mips/kernel/irq.c does not match the prototype in include/asm-mips/irq.h, resulting in a compile error.

[ralf@fluff linux]$ grep -r do_IRQ include/linux
include/linux/irq.h:extern asmlinkage unsigned int __do_IRQ(unsigned int irq, struct pt_regs *regs); [ralf@fluff linux]$

Just reposting somebody else's broken fix doesn't increase chances that I take a patch ...

Ralf