![]() | |||||||||||||
Messages in this thread |
On Mon, Aug 14, 2006 at 12:02:09AM -0700, Keith Owens wrote: >Sam Ravnborg (on Sun, 13 Aug 2006 21:45:03 +0200) wrote: >>Outstanding kbuild issues (I should fix a few of these for 2.6.18): >>o make -j N is not as parallel as expected (latest report from Keith >> Ownens but others has complained as well). I assume it is a kbuild >> thing but has no clue how to fix it or debug it further.>>It is the make jobserver code. make -j<n> causes the various make >tasks to communicate and work out how many versions are currently >running, to avoid overrunning the -j<n> value. Every recursive >invocation of make subtracts one from the -j value, reducing the value >that is left when make finally get down to doing some useful work >instead of just recursing. Jobserver problems are yet another reason >why recursive make is bad. > >kbuild is full of recursive make. The user cannot just add an excess >to <n>, the number of recursive invocations changes from kernel to >kernel as people try to fix bugs in makefile generation, so the >required excess value keeps changing. The jobserver in make 3.80 is buggy. 3.80 appears to work for parallel builds using a single Makefile, with recursive make it can lose jobserver tokens. make 3.81 works fine. Now to persuade SuSE to upgrade to make 3.81. - 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/ | ||||||||||||
| Last update: 2006-08-15 08:29 [from the cache] ©2003-2008 | |||||||||||||