* David Howells <[EMAIL PROTECTED]> wrote: > Ingo Molnar <[EMAIL PROTECTED]> wrote: > > > btw., would be nice to convert it to genirq (and irqchips) too =B-) That > > would solve the kind of disable_irq_lockdep() breakage that was reported > > recently. > > I can think of reasons for not using that stuff also. > > (1) Passing "struct pt_regs *regs" around is a complete waste of > resources on FRV. It's in GR28 at all times and can thus be > accessed directly.
we'll get rid of that pt_regs thing centrally, from all drivers at once - there's upstream buy-in for that already, and Thomas already generated a test-patch for that a few months ago. But it's not a big issue right now. > (2) All the little operations functions cause unnecessary jumping, > jumps that icache lookahead can't predict because they're > register-indirect. this shouldnt be a big issue either - we use indirect jumps all around the kernel. CPUs are either smart enough to predict it, or they simply dont have that high penalties. (and if they have high penalties but dont optimize for it then genirq will be the last of their worries. The VFS and the MM is full of function pointers.) > (3) ACK'ing and controlling interrupts has to be done by groups. please be more specific, how is this not possible via genirq? > (4) No account is taken of interrupt priority. hm, i'm not sure what you mean - could you be more specific? > (5) The FRV CPU doesn't tell me which IRQ source fired. Much of the > code I've got is stuff to try and work it out. I could just > blindly poll all the sources attached to a particular interrupt > level, but that seemssomehow less efficient. but ... somehow the current FRV code does figure out which IRQ source fired, right? How is that a hindrance for a genirq/irqchips based design? > BTW, have you looked at my patch to fix lockdep yet? oops, i missed it - just acked it. (This problem too was a side-effect of FRV having its own IRQ layer.) Ingo - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html