[lkml]   [2010]   [Mar]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [RFC] remove implicit slab.h inclusion from percpu.h
    Hello, Ingo.

    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 idea
    about the extent of necessary changes. I'll include the patch from
    now on.

    > i like the dependency reduction. Noticed one small detail:
    > this new 2000-lines #ifdef block percpu.c:
    > +#ifdef CONFIG_SMP
    > +#else /* CONFIG_SMP */
    > +#endif /* CONFIG_SMP */
    > feels a bit lame. A separate percpu_up.c file would be nicer i suppose?


    > 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 the
    files which ends up including percpu.h directly or indirectly on
    allmodconfig it ends up including much more .c files than necessasry -
    11203 to be exact, ~20 times more than necessary. Inclusions from .c
    files definitely are much less troublesome so the situation would be
    better than now but we'll still end up with a LOT of bogus inclusions
    without any good way to eventually remove them.

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



     \ /
      Last update: 2010-03-16 07:57    [W:0.022 / U:31.400 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site