Re: Building 100 kernels; we suck at dependencies and drown in warnings

From: Jesper Juhl
Date: Sun Feb 26 2006 - 11:34:09 EST


On 2/26/06, Jesper Juhl <jesper.juhl@xxxxxxxxx> wrote:
> On 2/26/06, Jesper Juhl <jesper.juhl@xxxxxxxxx> wrote:
> >
> > Hi everyone,
> >
> > I just sat down and build 100 kernels (2.6.16-rc4-mm2 kernels to be exact)
> >
> > 95 kernels were build with 'make randconfig'.
> > 1 kernel was build with the config I normally use for my own box.
> > 1 kernel was build from 'make defconfig'.
> > 1 kernel was build from 'make allmodconfig'.
> > 1 kernel was build from 'make allnoconfig'.
> > 1 kernel was build from 'make allyesconfig'.
> >
> > That was an interresting experience.
> >
> > First of all not very many of the kernels actually build correctly and
> > secondly, if I grep the build logs for warnings I'm swamped.
> >
> > Out of 100 kernels 82 failed to build - that's an 18% success rate people,
> > not very impressive.
> >
> > Some of the failed builds are due to things like CONFIG_STANDALONE that
> > will break the build if not set to Y (unless you have the firmware
> > available ofcourse), but looking at the config files I find that only 26
> > kernels have CONFIG_STANDALONE unset, so that only accounts for a quarter
> > of the kernels.
> >
> > A lot of failed builds are due to invalid combinations of some stuff
> > being build-in and some stuff being build as modules.
> > This, as far as I'm concerned, is something that the dependencies in
> > Kconfig should make impossible - hence my conclusion that we suck at deps.
> >
> > From 100 kernel builds there was a total of 16152 warnings and 645 of those
> > are unique warnings, the rest are duplicates.
> >
> > We are drowning in warnings people. Sure, many of the warnings are due to
> > gcc getting something wrong and shouldn't really be emitted, but a lot of
> > them point to actual problems or deficiencies (I obviously haven't looked
> > at them all in detail yet, so take that with a grain of salt please).
> >
> > In any case, it looks to me like we have some serious clean-up work to do.
> >
> > Unfortunately I don't have anywhere to put all the configs and logs online,
> > but I can send them on request, or if someone can point at a space to
> > upload them to I'll gladly make them available.
> >
> > That's it for now, I'll get to work trying to clean up some of the breakage
> > I've seen, if anyone wants to join in feel free :)
> >
> >
>
> For the interrested parties, here's a list of the unique warnings :
>
[snip list of warnings]

And for those who want to see a list of the unique errors, here they are :

make: *** [.tmp_vmlinux1] Error 1
make: *** [arch/i386/kernel] Error 2
make: *** [drivers] Error 2
make: *** [sound] Error 2
make: *** [vmlinux] Error 1
make[1]: *** [arch/i386/kernel/irq.o] Error 1
make[1]: *** [drivers/acpi] Error 2
make[1]: *** [drivers/atm] Error 2
make[1]: *** [drivers/isdn] Error 2
make[1]: *** [drivers/media] Error 2
make[1]: *** [drivers/mtd] Error 2
make[1]: *** [drivers/scsi] Error 2
make[1]: *** [drivers/usb] Error 2
make[1]: *** [sound/isa] Error 2
make[1]: *** [sound/oss] Error 2
make[2]: *** [drivers/acpi/numa.o] Error 1
make[2]: *** [drivers/acpi/numa.o] Error 1 LD [M] fs/ext3/ext3.o
make[2]: *** [drivers/acpi/osl.o] Error 1
make[2]: *** [drivers/atm/fore200e_pca_fw.c] Error 254
make[2]: *** [drivers/isdn/hysdn] Error 2
make[2]: *** [drivers/media/dvb] Error 2
make[2]: *** [drivers/mtd/maps] Error 2
make[2]: *** [drivers/scsi/aic7xxx] Error 2
make[2]: *** [drivers/usb/net] Error 2
make[2]: *** [sound/isa/opti9xx] Error 2
make[3]: *** [drivers/isdn/hysdn/hysdn_net.o] Error 1
make[3]: *** [drivers/media/dvb/ttpci] Error 2
make[3]: *** [drivers/mtd/maps/nettel.o] Error 1
make[3]: *** [drivers/scsi/aic7xxx/aicasm/aicasm] Error 2
make[3]: *** [drivers/usb/net/cdc_subset.o] Error 1
make[3]: *** [sound/isa/opti9xx/opti92x-ad1848.o] Error 1
make[3]: *** [sound/isa/opti9xx/opti93x.o] Error 1
make[4]: *** [aicasm] Error 1
make[4]: *** [drivers/media/dvb/ttpci/av7110_firm.h] Error 255


--
Jesper Juhl <jesper.juhl@xxxxxxxxx>
Don't top-post http://www.catb.org/~esr/jargon/html/T/top-post.html
Plain text mails only, please http://www.expita.com/nomime.html
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/