You are not comparing like with like. Much of your speed difference
from kbuild 2.4 to 2.5 is because you have omitted the make dep time.
kbuild 2.5 does not have a seperate make dep pass. Instead it checks
the dependencies every time, during phase4.
Checking the dependencies only once in kbuild 2.4 is a very common
source of build error. Users change their code, forget to rerun make
dep then wonder why their kernel and module build is broken. In your
case, you "know" that your change does not affect the dependencies so
you omit the make dep run. That is the equivalent of bypassing the
integrity checks in kbuild 2.5, i.e. it is the equivalent of
NO_MAKEFILE_GEN=1.
Also you specified make modules. You are bypassing all the checks to
see if any part of the main kernel needs to be rebuilt because of your
changes. Whether that bypass is correct or not is unknown, you are
asserting that it is and bypassing the dependency checks on the rest of
the kernel. BTW, if you have a lot of modules you will find that your
make modules time in 2.4 is significantly higher than the times you
quoted.
So you found a case that appears to make kbuild 2.4 faster than 2.5.
You did it by omitting the kbuild 2.4 step that does integrity checking
and by specifying command line options that bypass most of the build.
The result is that you are comparing an inaccurate 2.4 build against an
accurate 2.5 build.
I have never considered "fast but inaccurate" to be a sensible default
goal for a kernel build. If you want that, use NO_MAKEFILE_GEN=1.
-
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/