On Sun, 2009-01-18 at 22:09 -0700, Matthew Wilcox wrote: > On Mon, Jan 19, 2009 at 12:07:04PM +1100, Michael Ellerman wrote: > > Weak functions aren't all they're cracked up to be. They lead to > > incorrect binaries with some toolchains, they require us to have empty > > functions we otherwise wouldn't, and the unused code is not elided > > (as of gcc 4.3.2 anyway). > > I'm glad to see you've had a change of heart ;-) Well at least someone's glad :) > > So replace the weak MSI arch hooks with the #define foo foo idiom. We no > > longer need empty versions of arch_setup/teardown_msi_irq(). > > I'm working on a complete rewrite of the MSI code right now (spurred by > the realisation that a device with 2k MSI-X irqs will allocate 150k of > MSI-X descriptors, and be a really long list). I guess I'd rather we didn't do a "complete rewrite", but there's definitely work to be done before we can support lots of MSI-X irqs. Are you seeing hardware with 2K MSIs? I've got _2_ on the SATA controller in my laptop. > I'm coming around to the opinion that we should just get rid of the > arch_*_irq() interfaces altogether and force architectures to implement > arch_*_irqs(). Perhaps. Now that the other architecture implements arch_setup_msi_irqs that might be a bit more feasible, when I added it powerpc was the only user. > No more weak symbols, no ifdefs, and the interface to the architecture > isn't really harder for them to implement. Sounds good. Have you got any code we can see? And if you can incorporate the other patch I sent today into the rewrite that'd be nice, we really need that functionality. cheers -- Michael Ellerman OzLabs, IBM Australia Development Lab wwweb: http://michael.ellerman.id.au phone: +61 2 6212 1183 (tie line 70 21183) We do not inherit the earth from our ancestors, we borrow it from our children. - S.M.A.R.T Person
Attachment:
signature.asc
Description: This is a digitally signed message part