Re: CONFIG_SMP patch updated for 2.1.61

Pavel Machek (pavel@Elf.mj.gts.cz)
Tue, 4 Nov 1997 22:37:58 +0100


Hi!

> > Here it is:
> >
> > ftp://ftp.shout.net/pub/users/mec/patch/config-smp.2161
> >
> > This updates my previous patch, config-smp-2154. There are no
> > substantial changes.
>
> Note that the principal reason why CONFIG_SMP isn't an option is that it
> affects too much. It means that if you re-make the config file,
> _everything_ gets recompiled. It _used_ to be a config option, but I
> removed it because of this problem.

At least on my system, ~90% of files get recompiled when I touch
config. (I touched it, just to measure that... You owe me 30 minutes
of CPU time ;-)

Only config.h:
ls -l /usr/src/linux/target/i386/boot/zImage
-rw-r--r-- 1 pavel users 402707 Nov 4 22:03
/usr/src/linux/target/i386/boot/zImage
220 files, 27 min, 5 sec
pavel@Elf:/usr/src/linux$

And after make clean...
ls -l /usr/src/linux/target/i386/boot/zImage
-rw-r--r-- 1 pavel users 402707 Nov 4 22:32
/usr/src/linux/target/i386/boot/zImage
255 files, 26 min, 24 sec

So we are talking about ~30 #include's, which have nearly no impact on
compilation time. (I did not load machine on the first time, some text
file viewing on background...)

> The only way I would like a CONFIG_SMP would be if the config process
> itself was made smarter, and did:
>
> - separate config files (according to some simple rule). Instead of doing
> #include <linux/config.h>
> we'd do
> #include <config/smp.h>
> #include <config/scsi.h>
> ...

What about automatical config-dependator? In my mind there's a plan
how to do this without forcing people to specify which config parts
they use.

Imagine everyone still including <linux/config.h>, but 'virtual' files
linux/config/config_scsi_aha1770 etc. And then, when mkdep would see
CONFIG_SCSI_AHA1770 in foo.c, it would make foo.c depend on
CONFIG_SCSI_AHA1770. This could work.

And I believe this could (and should) be done without mkdep.c: gcc is
able to generate dependency information for us. (I already use
modified makefiles from mec@shout.net, which do not need mkdep.c -
dependency info are generated on the fly when compiling).

> - better CONFIG_XXX sanity checking that knew about the

...which would not be needed if dependencies are generated automagically.

> In short, I think that we need a more clever config setup, and before we
> have that I don't want to see CONFIG_SMP as an option.

Question is:

If someone comes with system that has better config_X dependencies
(and read-only source tree etc.), but rewrites every Makefile in
Linux, are you going to accept that patch? Is there at least chance?

Pavel

-- 
I'm really pavel@atrey.karlin.mff.cuni.cz. 	   Pavel
Look at http://atrey.karlin.mff.cuni.cz/~pavel/ ;-).