On Fri, 2016-09-02 at 13:26 -0700, Linus Torvalds wrote: > On Fri, Sep 2, 2016 at 1:06 PM, Arnd Bergmann <[email protected]> wrote: > > > > > > When I once looked, I thought all drivers using NO_IRQ were > > specific > > to powerpc or one of the less common architectures.
We deprecated NO_IRQ ages ago, it's 0 like it should be, but yes we may have forgotten to "cleanup" the old users. > powerpc definitely does seem to be the biggest case, with about half > the instances of NO_IRQ being under arch/powerpc/ (and a few more in > ppc-specific drivers). > > Adding the powerpc maintainers to the list - because it would really > be nice to get rid of it, or at least make it *so* rare that we don't > have people re-introducing it again because they thought it was the > right thing to do. Right. Originally it was -1 for us which causes the whole problem. I changed it to be 0 after doing the whole irq domain remapping thing. That was a loooong time ago. > A fair amount of of it could even be done by some trivial scripting. > Something like > > git grep -wl NO_IRQ arch/powerpc/ | while read a > do > sed 's/(\([a-z_]*irq\) != NO_IRQ)/(\1)/' < $a > $a.new > sed 's/(\([a-z_]*irq\) == NO_IRQ)/(!\1)/' < $a.new > $a > done > > does fix at least a few of the cases. It still leaves several > assignments and "return NO_IRQ;" statements, but a few more > sed-scripts would take care of most of it. Then remove the #define, > and do a full build to find any straggling cases. > > Michael? Ben? It can just be replaced with "0" in all powerpc related cases yes. Cheers, Ben.
