Re: [bloat] Measuring header file bloat effects on kernel buildperformance: a more than 2x slowdown ...

From: Ingo Molnar
Date: Mon May 23 2011 - 07:52:02 EST

* Alexey Dobriyan <adobriyan@xxxxxxxxx> wrote:

> On Mon, May 23, 2011 at 1:55 PM, Ingo Molnar <mingo@xxxxxxx> wrote:
> >
> > * Alexey Dobriyan <adobriyan@xxxxxxxxx> wrote:
> >
> >> On Mon, May 23, 2011 at 12:09 PM, Ingo Molnar <mingo@xxxxxxx> wrote:
> >> > Anway, what i tried to demonstrate with this mail how much *real* slowdown
> >> > in the kernel build our current header file bloat is causing. We could
> >> > literally halve our kernel build times if we fixed this!
> >>
> >> News at 11!
> >
> > I have not seen *actual hard numbers* measured before, so how exactly is this
> > news at 11? So i think your condescending reply is neither fair nor justified.
> That's because the final number itself neither important nor interesting.

I disagree rather violently: it's obviously important to know whether it's a
marginal 3% or the massive 50%+ i measured ...

It's also important to know whether latest GCC got faster at parsing away
~30-40 KLOC of irrelevant crap. (it didn't)

> It's enough to know it's big enough.
> Even removing "extern" from prototypes has small but noticeable effect,
> you're talking about real headers.
> Linus dropped few header cleanups of mine, I don't even know when is the
> right time to send them now.

I do not think your header cleanups are discouraged by Linus, at all (i think
they were always pretty nice and valuable) - i think you misinterpreted the
did-not-get-applied events:

Firstly, i've seen a fair amount of avoidable breakage from your header
cleanups, which are really testable with relatively simple means (key configs
and randconfig) - so you could either try to improve your testing, or you could
try to team up with someone better at testing to produce less buggy patches, or
you could push it into linux-next.

But my main guess is that it's mostly just bad timing: if you don't work
through maintainer trees (which you don't and sometimes you can't) you don't
want to push when there's lots of pending trees (for example right now in the
merge window), nor when possibly-broken cleanups are frowned upon (-rc3 or

-rc1 to -rc2 would be a pretty safe and large window to send such bits IMO.


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at