kbuild patch (20a468b51325b3636785a8ca0047ae514b39cbd5) breaks parallels-config

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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 [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux