lkml.org 
[lkml]   [2006]   [Jul]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: RFC: cleaning up the in-kernel headers
    On Tue, Jul 11, 2006 at 11:37:33PM +0200, Jörn Engel wrote:
    > On Tue, 11 July 2006 13:41:06 -0700, Randy.Dunlap wrote:
    > > On Tue, 11 Jul 2006 21:41:07 +0200 Sam Ravnborg wrote:
    > >
    > > > > JÃrn Engel IIRC created a perl scrip that did this a year or two ago.
    > > > > Try googling a bit.
    > > > http://lkml.org/lkml/2003/10/1/74
    > >
    > > That is version 2 of the script. There are also versions 3 & 4.
    > >
    > > http://marc.theaimsgroup.com/?l=linux-kernel&w=2&r=1&s=check+headers+for+complete+includes&q=t
    >
    > Boy, it took me a while to remember what I did back then. In
    > principle, the script just compiles trivial c files with a single
    > #include <linux/foo.h>
    > inside.

    Sure, but it seems quite useful for this task.

    > Not too bad in principle, but there were two problems I couldn't
    > solve:
    > 1. One of the goals should be to make a compile faster, not slower.
    > Adding further includes hardly helps.

    For me, this is not a goal.

    It might perhaps be a side effect, but I care about correctness, not
    about compile time.

    > 2. It is practically impossible to test every possible combination of
    > #ifdefs in the various headers pulled in.

    It's not perfect, but it finds a subset of the problems.

    There also other possible problems like stuff only used in a #define.

    The perfect is the enemy of the good.

    > Problem 1 would be fairly simple, as the script could be changed
    > slightly to prune single #include lines from headers and see if they
    > still compile. But then there is problem 2.
    >
    > One possibility to tackly problem 2 would be to create a set of config
    > files to use for automatic testing. Instead of compiling once, a
    > header must get compiled with every config in the set. Hopefully this
    > set would not grow too big.
    >
    > And in the end, there is just so much you can automate. Humans have
    > to think about the changes before sending patches.

    i don't think the header cleanup could be completely automated.

    But if automated tools help that's a good thing.

    > Jörn

    cu
    Adrian

    --

    "Is there not promise of rain?" Ling Tan asked suddenly out
    of the darkness. There had been need of rain for many days.
    "Only a promise," Lao Er said.
    Pearl S. Buck - Dragon Seed

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2006-07-12 00:43    [W:0.025 / U:2.292 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site