Messages in this thread Patch in this message |  | | Date | Mon, 5 Jun 2006 18:49:50 +0200 | | From | Thomas Glanzmann <> | | Subject | kbuild patch (20a468b51325b3636785a8ca0047ae514b39cbd5) breaks parallels-config |
| |
Hello Sam, I use parallels, a hypervisor based virtual machine, for Linux which ships with binary kernel modules and a bit of gluecode. After your commit 20a468b51325b3636785a8ca0047ae514b39cbd5 in the linux kernel the compilation of this kernel modules ends up in an endless-loop. I don't think that this is a problem of the kernel build system but the way paralles does abuse the kernel build system (they use autoconf to generate a makefile which looks obvious broken). However I tracked the offending delta down to the following:
(mini) [~/work/linux-2.6] git diff -R diff --git a/scripts/Makefile.build b/scripts/Makefile.build index acd3b96..e48e60d 100644 --- a/scripts/Makefile.build +++ b/scripts/Makefile.build @@ -10,11 +10,12 @@ __build: # Read .config if it exist, otherwise ignore -include .config
+include scripts/Kbuild.include + # The filename Kbuild has precedence over Makefile kbuild-dir := $(if $(filter /%,$(src)),$(src),$(srctree)/$(src)) include $(if $(wildcard $(kbuild-dir)/Kbuild), $(kbuild-dir)/Kbuild, $(kbuild-dir)/Makefile)
-include scripts/Kbuild.include include scripts/Makefile.lib
ifdef host-progs If you reverse apply this delta of your patch, it works again. I don't get what is going wrong here, but maybe you want to have a look at it.
To reproduce:
* Go to http://www.parallels.com/en/download/ and download the packages for your distribution
cd /usr/lib/parallels ./configure make
if you do this with a recent kernel version (newer than 20a468b51325b3636785a8ca0047ae514b39cbd5) it ends in an endless-loop otherwise it works.
The broken parallels makefiles are in:
/usr/lib/parallels/drivers/drv_net/linux/Makefile /usr/lib/parallels/drivers/drv_net/Makefile /usr/lib/parallels/drivers/drv_virtualnic/Makefile /usr/lib/parallels/drivers/drv_main/Makefile /usr/lib/parallels/drivers/hypervisor/Makefile <<<<< This is the first one which breaks. The other follow. /usr/lib/parallels/drivers/Makefile
I also created a website for my findings: http://thomas.glanzmann.de/parallels/
Thomas [who thanks Linus for git bisect] - 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/
|  |