LKML Archive on
help / color / mirror / Atom feed
From: Andrea Arcangeli <>
To: Keith Owens <>
Cc: Jeff Garzik <>,
Subject: Re: [patch] 2.4.11-pre4 remove spurious kernel recompiles
Date: Mon, 8 Oct 2001 04:12:15 +0200	[thread overview]
Message-ID: <20011008041215.O726@athlon.random> (raw)
In-Reply-To: <20011008032022.M726@athlon.random> <>
In-Reply-To: <>; from on Mon, Oct 08, 2001 at 11:34:04AM +1000

On Mon, Oct 08, 2001 at 11:34:04AM +1000, Keith Owens wrote:
> On Mon, 8 Oct 2001 03:20:23 +0200, 
> Andrea Arcangeli <> wrote:
> >On Mon, Oct 08, 2001 at 10:42:56AM +1000, Keith Owens wrote:
> >> IOW a check for Makefile timestamp is both overkill (it recompiles too
> >> much) and incomplete (it does not detect command line overrides).  BTW,
> >> kbuild 2.5 gets this right.
> >
> >That sounds fine. Of course the only regression could be the build time.
> >Do you have a benchmark on the build time with kbuild 2.5 applied to
> >2.4.10 compared to the build time of 2.4.10?
> kbuild 2.5 build times vary from 10% faster to 100% slower, depending
> on the number of objects being compiled.  There are some O(n^2)

I meant for a stright compile, which is going to be its worst case and
my common case.

The main thing I like is to be able to compile out of the tree and
avoiding touching the header files during compilation (that's really

> algorithms in kbuild 2.5, I know where they are and how to fix them, it
> just takes time that I don't have right now.  At the moment I am
> concentrating on correctness for kbuild 2.5.  MEC mantra:
>   Correctness comes first. 
>   Then maintainability. 
>   Then speed.

I personally don't care about correctness in the sense of getting "make"
doing everything for you regardless of what you changed, I'm fine with
some "make distclean" forced checkpoint after PATCHLEVEL changed etc...,
you said infact full compile is needed sometime, not to tell about
kernel configuration.

One good example is the mkdep hack, it's far from correct: the header
dependences is nearly random.  We cannot trust it unless we remeber
every user included us (one more reason I'm used to full recompiles),
but it's much faster than the correct full dependences generated by gcc
so I'm fine with it. When I compile other projects like kde2 I'm amazed
how slow the compilation is, ok it's not stright C but I bet the
correctness of its dependences hits a lot too on the compilation time
(but it's rebuilt in background so I don't care if it's slow while for
the kernel I'm sometime more synchronous waiting for the compilation to
finish :).

> BTW, how can you apply a -ac patch that sets SUBLEVEL backwards?  -ac

First backout Linus's pre patch, then apply AC's -ac. The end result is
a backwards SUBLEVEL.


  reply	other threads:[~2001-10-08  2:12 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-10-07 10:25 [patch] 2.4.11-pre4 remove spurious kernel recompiles Keith Owens
2001-10-07 18:05 ` Andrea Arcangeli
2001-10-07 18:16   ` Jeff Garzik
2001-10-07 23:29     ` Keith Owens
2001-10-08  0:05       ` Andrea Arcangeli
2001-10-08  0:42         ` Keith Owens
2001-10-08  1:20           ` Andrea Arcangeli
2001-10-08  1:34             ` Keith Owens
2001-10-08  2:12               ` Andrea Arcangeli [this message]
2001-10-08  2:49                 ` Keith Owens
2001-10-08  3:07                   ` Andrea Arcangeli
2001-10-08 17:56               ` bill davidsen
2001-10-08 16:19 ` bill davidsen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20011008041215.O726@athlon.random \ \ \ \ \

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).