From owner-svn-src-all@FreeBSD.ORG Sat Mar 28 17:29:15 2015 Return-Path: Delivered-To: svn-src-all@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 98B1FAAD for ; Sat, 28 Mar 2015 17:29:15 +0000 (UTC) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7671DD77 for ; Sat, 28 Mar 2015 17:29:15 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.9/8.14.9) with ESMTP id t2SHTFZF067992 for ; Sat, 28 Mar 2015 17:29:15 GMT (envelope-from bdrewery@freefall.freebsd.org) Received: (from bdrewery@localhost) by freefall.freebsd.org (8.14.9/8.14.9/Submit) id t2SHTFFY067990 for svn-src-all@FreeBSD.org; Sat, 28 Mar 2015 17:29:15 GMT (envelope-from bdrewery) Received: (qmail 23948 invoked from network); 28 Mar 2015 12:29:05 -0500 Received: from unknown (HELO ?10.10.1.139?) (freebsd@shatow.net@10.10.1.139) by sweb.xzibition.com with ESMTPA; 28 Mar 2015 12:29:05 -0500 Message-ID: <5516E4EA.60201@FreeBSD.org> Date: Sat, 28 Mar 2015 12:29:14 -0500 From: Bryan Drewery Organization: FreeBSD User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.5.0 MIME-Version: 1.0 To: Don Lewis , alc@FreeBSD.org Subject: Re: svn commit: r280327 - in head/sys: kern vm References: <201503280241.t2S2fWcQ078499@gw.catspoiler.org> In-Reply-To: <201503280241.t2S2fWcQ078499@gw.catspoiler.org> OpenPGP: id=6E4697CF; url=http://www.shatow.net/bryan/bryan2.asc Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="9U3ngmVQRHrRd1wngbqhuv8MgLOFQaHQi" Cc: svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org, clusteradm@FreeBSD.org, portmgr@FreeBSD.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Mar 2015 17:29:15 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --9U3ngmVQRHrRd1wngbqhuv8MgLOFQaHQi Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable On 3/27/2015 9:41 PM, Don Lewis wrote: > On 21 Mar, Alan Cox wrote: >> Author: alc >> Date: Sat Mar 21 17:56:55 2015 >> New Revision: 280327 >> URL: https://svnweb.freebsd.org/changeset/base/280327 >> >> Log: >> Introduce vm_object_color() and use it in mmap(2) to set the color o= f >> named objects to zero before the virtual address is selected. Previ= ously, >> the color setting was delayed until after the virtual address was >> selected. In rtld, this delay effectively prevented the mapping of = a >> shared library's code section using superpages. Now, for example, w= e see >> the first 1 MB of libc's code on armv6 mapped by a superpage after w= e've >> gotten through the initial cold misses that bring the first 1 MB of = code >> into memory. (With the page clustering that we perform on read faul= ts, >> this happens quickly.) >> =20 >> Differential Revision: https://reviews.freebsd.org/D2013 >> Reviewed by: jhb, kib >> Tested by: Svatopluk Kraus (armv6) >> MFC after: 6 weeks >> >> Modified: >> head/sys/kern/kern_exec.c >> head/sys/vm/vm_fault.c >> head/sys/vm/vm_mmap.c >> head/sys/vm/vm_object.h >> head/sys/vm/vnode_pager.c >=20 > This change appears to have partially broken package building. >=20 > I recently set up a package building machine running 11.0-CURRENT > r280642 and found that it was unable to build openjdk7 packages inside > FreeBSD 8.4 and 9.3 poudriere jails, for both i386 and amd64. >=20 > [snip] > Compiling ../generated/adfiles/ad_x86_64_gen.cpp > rm -f ad_x86_64_gen.o > c++ -D_ALLBSD_SOURCE -D_GNU_SOURCE -DAMD64 -DPRODUCT -I. -I/wrkdirs/usr= /ports/java/openjdk7/work/openjdk/hotspot/src/share/vm/prims -I/wrkdirs/u= sr/ports/java/openjdk7/work/openjdk/hotspot/src/share/vm -I/wrkdirs/usr/p= orts/java/openjdk7/work/openjdk/hotspot/src/share/vm/precompiled -I/wrkdi= rs/usr/ports/java/openjdk7/work/openjdk/hotspot/src/cpu/x86/vm -I/wrkdirs= /usr/ports/java/openjdk7/work/openjdk/hotspot/src/os_cpu/bsd_x86/vm -I/wr= kdirs/usr/ports/java/openjdk7/work/openjdk/hotspot/src/os/bsd/vm -I/wrkdi= rs/usr/ports/java/openjdk7/work/openjdk/hotspot/src/os/posix/vm -I../gene= rated -DHOTSPOT_RELEASE_VERSION=3D"\"24.76-b04\"" -DHOTSPOT_BUILD_TARGET=3D= "\"product\"" -DHOTSPOT_BUILD_USER=3D"\"root\"" -DHOTSPOT_LIB_ARCH=3D\"am= d64\" -DHOTSPOT_VM_DISTRO=3D"\"OpenJDK\"" -O2 -pipe -fstack-protector -fn= o-strict-aliasing -DTARGET_OS_FAMILY_bsd -DTARGET_ARCH_x86 -DTARGET_ARCH_= MODEL_x86_64 -DTARGET_OS_ARCH_bsd_x86 -DTARGET_OS_ARCH_MODEL_bsd_x86_64 -= DTARGET_COMPILER_gcc -DCOMPILER2 -DCOMPILER1 -fno! > -rtti -fno-exceptions -pthread -fcheck-new -m64 -pipe -DTARGET_OS_FAMI= LY_bsd -DTARGET_ARCH_x86 -DTARGET_ARCH_MODEL_x86_64 -DTARGET_OS_ARCH_bsd_= x86 -DTARGET_OS_ARCH_MODEL_bsd_x86_64 -DTARGET_COMPILER_gcc -DCOMPILER2 -= DCOMPILER1 -fPIC -fno-rtti -fno-exceptions -pthread -fcheck-new -m64 -pip= e -O3 -fno-strict-aliasing -DVM_LITTLE_ENDIAN -D_LP64=3D1 -fno-omit-frame= -pointer -DINCLUDE_TRACE=3D1 -Wpointer-arith -Wconversion -Wsign-compare= -c -fpch-deps -MMD -MP -MF ../generated/dependencies/ad_x86_64_forma= t.o.d -o ad_x86_64_format.o ../generated/adfiles/ad_x86_64_format.cpp=20 > c++ -D_ALLBSD_SOURCE -D_GNU_SOURCE -DAMD64 -DPRODUCT -I. -I/wrkdirs/usr= /ports/java/openjdk7/work/openjdk/hotspot/src/share/vm/prims -I/wrkdirs/u= sr/ports/java/openjdk7/work/openjdk/hotspot/src/share/vm -I/wrkdirs/usr/p= orts/java/openjdk7/work/openjdk/hotspot/src/share/vm/precompiled -I/wrkdi= rs/usr/ports/java/openjdk7/work/openjdk/hotspot/src/cpu/x86/vm -I/wrkdirs= /usr/ports/java/openjdk7/work/openjdk/hotspot/src/os_cpu/bsd_x86/vm -I/wr= kdirs/usr/ports/java/openjdk7/work/openjdk/hotspot/src/os/bsd/vm -I/wrkdi= rs/usr/ports/java/openjdk7/work/openjdk/hotspot/src/os/posix/vm -I../gene= rated -DHOTSPOT_RELEASE_VERSION=3D"\"24.76-b04\"" -DHOTSPOT_BUILD_TARGET=3D= "\"product\"" -DHOTSPOT_BUILD_USER=3D"\"root\"" -DHOTSPOT_LIB_ARCH=3D\"am= d64\" -DHOTSPOT_VM_DISTRO=3D"\"OpenJDK\"" -O2 -pipe -fstack-protector -fn= o-strict-aliasing -DTARGET_OS_FAMILY_bsd -DTARGET_ARCH_x86 -DTARGET_ARCH_= MODEL_x86_64 -DTARGET_OS_ARCH_bsd_x86 -DTARGET_OS_ARCH_MODEL_bsd_x86_64 -= DTARGET_COMPILER_gcc -DCOMPILER2 -DCOMPILER1 -fno! > -rtti -fno-exceptions -pthread -fcheck-new -m64 -pipe -DTARGET_OS_FAMI= LY_bsd -DTARGET_ARCH_x86 -DTARGET_ARCH_MODEL_x86_64 -DTARGET_OS_ARCH_bsd_= x86 -DTARGET_OS_ARCH_MODEL_bsd_x86_64 -DTARGET_COMPILER_gcc -DCOMPILER2 -= DCOMPILER1 -fPIC -fno-rtti -fno-exceptions -pthread -fcheck-new -m64 -pip= e -O3 -fno-strict-aliasing -DVM_LITTLE_ENDIAN -D_LP64=3D1 -fno-omit-frame= -pointer -DINCLUDE_TRACE=3D1 -Wpointer-arith -Wconversion -Wsign-compare= -c -fpch-deps -MMD -MP -MF ../generated/dependencies/ad_x86_64_gen.o= =2Ed -o ad_x86_64_gen.o ../generated/adfiles/ad_x86_64_gen.cpp=20 > Compiling ../generated/adfiles/ad_x86_64_misc.cpp > rm -f ad_x86_64_misc.o > c++ -D_ALLBSD_SOURCE -D_GNU_SOURCE -DAMD64 -DPRODUCT -I. -I/wrkdirs/usr= /ports/java/openjdk7/work/openjdk/hotspot/src/share/vm/prims -I/wrkdirs/u= sr/ports/java/openjdk7/work/openjdk/hotspot/src/share/vm -I/wrkdirs/usr/p= orts/java/openjdk7/work/openjdk/hotspot/src/share/vm/precompiled -I/wrkdi= rs/usr/ports/java/openjdk7/work/openjdk/hotspot/src/cpu/x86/vm -I/wrkdirs= /usr/ports/java/openjdk7/work/openjdk/hotspot/src/os_cpu/bsd_x86/vm -I/wr= kdirs/usr/ports/java/openjdk7/work/openjdk/hotspot/src/os/bsd/vm -I/wrkdi= rs/usr/ports/java/openjdk7/work/openjdk/hotspot/src/os/posix/vm -I../gene= rated -DHOTSPOT_RELEASE_VERSION=3D"\"24.76-b04\"" -DHOTSPOT_BUILD_TARGET=3D= "\"product\"" -DHOTSPOT_BUILD_USER=3D"\"root\"" -DHOTSPOT_LIB_ARCH=3D\"am= d64\" -DHOTSPOT_VM_DISTRO=3D"\"OpenJDK\"" -O2 -pipe -fstack-protector -fn= o-strict-aliasing -DTARGET_OS_FAMILY_bsd -DTARGET_ARCH_x86 -DTARGET_ARCH_= MODEL_x86_64 -DTARGET_OS_ARCH_bsd_x86 -DTARGET_OS_ARCH_MODEL_bsd_x86_64 -= DTARGET_COMPILER_gcc -DCOMPILER2 -DCOMPILER1 -fno! > -rtti -fno-exceptions -pthread -fcheck-new -m64 -pipe -DTARGET_OS_FAMI= LY_bsd -DTARGET_ARCH_x86 -DTARGET_ARCH_MODEL_x86_64 -DTARGET_OS_ARCH_bsd_= x86 -DTARGET_OS_ARCH_MODEL_bsd_x86_64 -DTARGET_COMPILER_gcc -DCOMPILER2 -= DCOMPILER1 -fPIC -fno-rtti -fno-exceptions -pthread -fcheck-new -m64 -pip= e -O3 -fno-strict-aliasing -DVM_LITTLE_ENDIAN -D_LP64=3D1 -fno-omit-frame= -pointer -DINCLUDE_TRACE=3D1 -Wpointer-arith -Wconversion -Wsign-compare= -c -fpch-deps -MMD -MP -MF ../generated/dependencies/ad_x86_64_misc.= o.d -o ad_x86_64_misc.o ../generated/adfiles/ad_x86_64_misc.cpp=20 > /wrkdirs/usr/ports/java/openjdk7/work/openjdk/hotspot/src/share/vm/comp= iler/abstractCompiler.cpp:1: fatal error: had to relocate PCH > compilation terminated. > /wrkdirs/usr/ports/java/openjdk7/work/openjdk/hotspot/src/share/vm/util= ities/accessFlags.cpp:1: fatal error: had to relocate PCH > compilation terminated. > /wrkdirs/usr/ports/java/openjdk7/work/openjdk/hotspot/make/bsd/makefile= s/rules.make:149: recipe for target 'abstractCompiler.o' failed > gmake[6]: *** [abstractCompiler.o] Error 1 > gmake[6]: *** Waiting for unfinished jobs.... > ../generated/adfiles/ad_x86_64.cpp:1: fatal error: had to relocate PCH > compilation terminated. Are you using ccache? > ../generated/adfiles/ad_x86_64_clone.cpp:1: fatal error: had to relocat= e PCH > compilation terminated. > /wrkdirs/usr/ports/java/openjdk7/work/openjdk/hotspot/make/bsd/makefile= s/rules.make:149: recipe for target 'accessFlags.o' failed > gmake[6]: *** [accessFlags.o] Error 1 > /wrkdirs/usr/ports/java/openjdk7/work/openjdk/hotspot/make/bsd/makefile= s/rules.make:149: recipe for target 'ad_x86_64_clone.o' failed > gmake[6]: *** [ad_x86_64_clone.o] Error 1 > /wrkdirs/usr/ports/java/openjdk7/work/openjdk/hotspot/make/bsd/makefile= s/rules.make:149: recipe for target 'ad_x86_64.o' failed > gmake[6]: *** [ad_x86_64.o] Error 1 > ../generated/adfiles/ad_x86_64_expand.cpp:1: fatal error: had to reloca= te PCH > compilation terminated. > /wrkdirs/usr/ports/java/openjdk7/work/openjdk/hotspot/make/bsd/makefile= s/rules.make:149: recipe for target 'ad_x86_64_expand.o' failed > gmake[6]: *** [ad_x86_64_expand.o] Error 1 > ../generated/adfiles/ad_x86_64_gen.cpp:1: fatal error: had to relocate = PCH > compilation terminated. > ../generated/adfiles/ad_x86_64_misc.cpp:1: fatal error: had to relocate= PCH > compilation terminated. > /wrkdirs/usr/ports/java/openjdk7/work/openjdk/hotspot/make/bsd/makefile= s/rules.make:149: recipe for target 'ad_x86_64_gen.o' failed > gmake[6]: *** [ad_x86_64_gen.o] Error 1 > /wrkdirs/usr/ports/java/openjdk7/work/openjdk/hotspot/make/bsd/makefile= s/rules.make:149: recipe for target 'ad_x86_64_misc.o' failed > gmake[6]: *** [ad_x86_64_misc.o] Error 1 > ../generated/adfiles/ad_x86_64_format.cpp:1: fatal error: had to reloca= te PCH > compilation terminated. > /wrkdirs/usr/ports/java/openjdk7/work/openjdk/hotspot/make/bsd/makefile= s/rules.make:149: recipe for target 'ad_x86_64_format.o' failed > gmake[6]: *** [ad_x86_64_format.o] Error 1 > gmake[6]: Leaving directory '/wrkdirs/usr/ports/java/openjdk7/work/open= jdk/build/bsd-amd64/hotspot/outputdir/bsd_amd64_compiler2/product' > /wrkdirs/usr/ports/java/openjdk7/work/openjdk/hotspot/make/bsd/makefile= s/top.make:128: recipe for target 'the_vm' failed > gmake[5]: *** [the_vm] Error 2 > gmake[5]: Leaving directory '/wrkdirs/usr/ports/java/openjdk7/work/open= jdk/build/bsd-amd64/hotspot/outputdir/bsd_amd64_compiler2/product' > /wrkdirs/usr/ports/java/openjdk7/work/openjdk/hotspot/make/bsd/Makefile= :292: recipe for target 'product' failed > gmake[4]: *** [product] Error 2 > gmake[4]: Leaving directory '/wrkdirs/usr/ports/java/openjdk7/work/open= jdk/build/bsd-amd64/hotspot/outputdir' > Makefile:191: recipe for target 'generic_build2' failed > gmake[3]: *** [generic_build2] Error 2 > gmake[3]: Leaving directory '/wrkdirs/usr/ports/java/openjdk7/work/open= jdk/hotspot/make' > Makefile:151: recipe for target 'product' failed > gmake[2]: *** [product] Error 2 > gmake[2]: Leaving directory '/wrkdirs/usr/ports/java/openjdk7/work/open= jdk/hotspot/make' > make/hotspot-rules.gmk:111: recipe for target 'hotspot-build' failed > gmake[1]: *** [hotspot-build] Error 2 > gmake[1]: Leaving directory '/wrkdirs/usr/ports/java/openjdk7/work/open= jdk' > Makefile:251: recipe for target 'build_product_image' failed > gmake: *** [build_product_image] Error 2 > =3D=3D=3D> Compilation failed unexpectedly. >=20 > I was not seeing this problem on my older package builder running > 10.1-STABLE. Since this problem has not shown up on the FreeBSD packag= e > building cluster, I got suspicious that the change was quite recent. >=20 > This old gcc bug report: > led me to suspec= t > mmap(). >=20 > The old gcc source file /usr/src/contrib/gcc/ggc-common.c does a couple= > of mmap() calls. Tne first is in mmap_gt_pch_get_address() where a > NULL first argument is used. The address that gets returned is stashed= > away and the region is unmapped. Then a later call in > mmap_gt_pch_use_address() passes this saved address to mmap() as a > hint. It expects the mapped region to get mapped to the same base > address. If this does not happen, the above error is the result. I don't know what I'm talking about but that doesn't sound like a very safe assumption for the gcc code to make. >=20 > If I go back to kernel source r280326, which immediately preceeds the > above commit, I am able to successfully build openjdk7. >=20 > I recommend that any machines in the ports cluster being used to build > packages for FreeBSD 8 and 9 avoid upgrading past r280326 until this > issue is resolved. I have not observed any problems building packages > for FreeBSD 10 and 11. >=20 Is it 100% for you before and after? I've seen this error come up randomly where a rebuild will succeed. or fail. --=20 Regards, Bryan Drewery --9U3ngmVQRHrRd1wngbqhuv8MgLOFQaHQi Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQEcBAEBAgAGBQJVFuTqAAoJEDXXcbtuRpfPzgsIAMif2+GyWXX6xhsK+fWU7PGV yHJWEvIPtF+0V0xMjRaIuB4F5uppZs2Pg2DqRHg4xTejyN7l1W8dTj9KdSlpKf7T /CCV4r/lZLMR+/qYuTS16K5TZ5M4gGO7iSsrcCMnP/YyPDV2D32kle9fLTTi4lb2 oGvjoox9kA4xwHDgq6NeXNXB6snQfVBQDssrUtmYbxuJF5nV8Shs0nW6L9I7qaB0 InON+BE8wWJ69t8bF8EGrbjWJaffYeDcRwXxE4SKNEYYXkqpLcFQCJa2TDD2Fu8j wlb6qTbkO6NZ/p8qet7JpQ15QZ4sHWYlOrvqsrkMtdCjPfNNQe/jjB1u44C+Yl0= =xId4 -----END PGP SIGNATURE----- --9U3ngmVQRHrRd1wngbqhuv8MgLOFQaHQi--