Buildworld failure with -j24 and ZFS on GPT on Core i7-860 system

Dan Nelson dnelson at allantgroup.com
Wed Jan 20 23:50:29 UTC 2010


In the last episode (Jan 21), Matt Thyer said:
> 2010/1/21 Dan Nelson <dnelson at allantgroup.com>
> > In the last episode (Jan 21), Matt Thyer said:
> > > I typically buildworld with a parallel make of hw.ncpu * 3 which
> > > results in -j24 on my new system (Intel Core i7-860, 8GB RAM).
[...] 
> > > Build failure is:
> > >
> > > sh /usr/src/tools/install.sh -C -o root -g wheel -m 444  asn1_err.h
> > > /usr/src/kerberos5/lib/libasn1/../../../crypto/heimdal/lib/asn1/heim_asn1.h
> > > cms_asn1.h rfc2459_asn1.h krb5_asn1.h pkinit_asn1.h pkcs8_asn1.h
> > > pkcs9_asn1.h pkcs12_asn1.h digest_asn1.h kx509_asn1.h
> > > /usr/obj/usr/src/tmp/usr/include
> > > sh /usr/src/tools/install.sh -s -o root -g wheel -m 444     libasn1.so.10
> > > /usr/obj/usr/src/tmp/usr/lib
> > > ln -fs libasn1.so.10 /usr/obj/usr/src/tmp/usr/lib/libasn1.so
> > > 1 error
> > > *** Error code 2
> > > 1 error
> > > *** Error code 2
> > > 1 error
> > > *** Error code 2
> > > 1 error
> >
> > It's much more likely to be a Makefile dependency problem than a ZFS
> > bug.  You will need to look much farther up in your log to see the real
> > error message.  Make will wait for the other 23 jobs to finish before
> > returning, so what you posted was the output of one of the other jobs,
> > plus the output of each parent make as it exits with an error code.
> 
> This was my first thought so I grepped my log for "error" in a case
> insensitive way and found nothing.  That's why I think that it may be a
> file system issue as the line prior to the link is the installation of the
> "libasn1.so.10" shared library.  I have now installed the same JPSNAP on
> another identical hard disk (300GB Seagate SATA) in a UFS only system and
> will test again shortly.

Since the ln command didn't print an error message itself, it's unlikely to
have caused the build to fail.  Try searching for "***" or ":" instead.

You can try adding -v or -P to your initial make commandline; either will
add extra lines to parallel builds that make it easier to tell exactly what
make target caused a failure.  I don't know if they will cause issues with
the buildworld framework, though.  Try running "make -j2", "make -v -j2",
and "make -P -j2" on the following Makefile to see what the flags do:

( indented lines have leading tabs )

test: test1 test2

test1:
	@sleep 1
	@false

test2:
	@echo "hi I'm a successful target"
	

-- 
	Dan Nelson
	dnelson at allantgroup.com


More information about the freebsd-current mailing list