On 03/16/2010 03:17 PM, Ingo Molnar wrote:> ( /me mumbles something about not having a patch in the email to review and> pulling the tree. 200k patch is just fine for lkml - i've attached it below> for easier review. percpu.h and percpu.c has the meat of the changes. )

I wanted to keep the discussion high level while giving a general ideaabout the extent of necessary changes. I'll include the patch fromnow on.

> Also, why should we make this opt-in and expose a wide range of configs to > build breakages? A more gradual approach would be to write a simple script > that adds a slab.h include to all .c's that include percpu.h, directly or > indirectly.>> You can map the pattern experimentally: the insertion pattern could be built > from the x86 allmodconfig build you did [i.e. extend the pattern until you > make it build on allmodconfig] - that would cover most cases in practice (not > just allmodconfig) - and would cover most architectures as well.

I don't really get the 'experimental' part but if I count all thefiles which ends up including percpu.h directly or indirectly onallmodconfig it ends up including much more .c files than necessasry -11203 to be exact, ~20 times more than necessary. Inclusions from .cfiles definitely are much less troublesome so the situation would bebetter than now but we'll still end up with a LOT of bogus inclusionswithout any good way to eventually remove them.

Maybe a better way is to grab for slab API usages in .c files whichdon't have slab.h inclusion. If breaking the dependency is the way togo, I can definitely write up some scripts and do test builds on somearchs. There sure will be some fallouts but I think it won't be toobad.