On Wed, Dec 5, 2012 at 8:42 AM, John Baldwin <jhb_at_freebsd.org> wrote: > On Tuesday, December 04, 2012 2:41:32 pm Ryan Stone wrote: >> On Tue, Dec 4, 2012 at 10:52 AM, John Baldwin <jhb_at_freebsd.org> wrote: >> >> > Hmm, I certainly see the module directories being built in parallel. Some >> > of >> > the make jobs may not be as obvious since links are silent (no output >> > unless >> > there is an error). >> > >> > >> This is definitely not the behaviour that I see trying to build any version >> of FreeBSD. I see the same behaviour as Andre: the depend and all targets >> both iterate through the module directories sequentially. It never builds >> two module subdirectories concurrently. > > Hmm, I think I was confused by seeing kernel builds intermingle with the > associated modules. sys/modules/Makefile uses bsd.subdir.mk. I think I see > similar things in world builds where I will see parallel builds of bin vs sbin > vs usr.bin vs usr.sbin, but within each of those directories the builds go > sequentially. I think you would need to change bsd.subdir.mk if you want to > fix this. Correct: 45 _at_${_+_}for entry in ${SUBDIR}; do \ ^^^^^^^^^^^^^^^^^^^ This is where things get serialized ^^^^^^^^^^^^^^^^^^^^^^^^ 46 if test -d ${.CURDIR}/$${entry}.${MACHINE_ARCH}; then \ Same thing applies for buildkernel building modules because it just wraps around bsd.subdir.mk in sys/modules/Makefile . Enhancing it to be parallel would introduce potential races. Some of the work sjg's doing with meta make will make this unnecessary from a buildworld perspective, but I'm not sure about buildkernel. Thanks, -GarrettReceived on Wed Dec 05 2012 - 16:10:55 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:32 UTC