Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 18 Aug 2017 16:59:35 -0700
From:      Mark Millard <markmi@dsl-only.net>
To:        Bryan Drewery <bdrewery@FreeBSD.org>, FreeBSD Toolchain <freebsd-toolchain@freebsd.org>
Subject:   "poudriere bulk -w" use vs. kern.corefile=/var/crash/%N.%P.core
Message-ID:  <4D01E4AF-9371-4D4C-AD06-034F378AE8C4@dsl-only.net>

next in thread | raw e-mail | index | archive | help
I classically run FreeBSD with:

# more /etc/sysctl.conf=20
kern.corefile=3D/var/crash/%N.%P.core

But I've discovered that for "poudriere build -w" use
this means that the likes of:

=
/usr/local/poudriere/data/wrkdirs/zrFBSDx64Cjail-default/default/ghc-8.0.2=
_1.tbz

ends up without the core file from the failed build involved.

So I've reverted to:

# more /etc/sysctl.conf=20
kern.corefile=3D%N.%P.core

which then gets me things like (from trying with the
adjusted context):

# tar xf =
/usr/local/poudriere/data/wrkdirs/zrFBSDx64Cjail-default/default/ghc-8.0.2=
_1.tbz                                                                   =
                   # find . -name "*.core" -print                        =
                                                                         =
                                                            =
./work/ghc-8.0.2/ghc.29907.core

Outside poudriere I normally prefer to a void
having .core files left in various places.


The jail context here is based on:

~/sys_build_scripts.amd64-host/make_amd64_nodebug_clang-amd64-host.sh =
-j8 installworld distrib-dirs distribution =
DESTDIR=3D/usr/obj/DESTDIRs/clang-amd64-installworld-dist DB_FROM_SRC=3D1

~/sys_build_scripts.amd64-host/make_amd64_nodebug_clang-amd64-host.sh =
delete-old delete-old-libs -DBATCH_DELETE_OLD_FILES =
DESTDIR=3D/usr/obj/DESTDIRs/clang-amd64-installworld-dist DB_FROM_SRC=3D1

poudriere jail -c -j zrFBSDx64Cjail -m null -M =
/usr/obj/DESTDIRs/clang-amd64-installworld-dist -S /usr/src -v =
12.0-CURRENT

But the behavior is tied to the live system's /etc/sysctl.conf
(or the last live setting from a "sysctl kern.corefile=3D. . ."
before the:

/usr/bin/nohup poudriere bulk -j zrFBSDx64Cjail -w . . .

run if then left alone).

Note: My jail context here depends on a local workaround
for this style of jail construction:

# svnlite diff /usr/ports/Mk/bsd.port.mk
Index: /usr/ports/Mk/bsd.port.mk
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- /usr/ports/Mk/bsd.port.mk	(revision 447975)
+++ /usr/ports/Mk/bsd.port.mk	(working copy)
@@ -1119,18 +1119,18 @@
=20
 # Get the architecture
 .if !defined(ARCH)
-ARCH!=3D	${UNAME} -p
+ARCH!=3D	echo amd64
 .endif
 _EXPORTED_VARS+=3D	ARCH
=20
 # Get the operating system type
 .if !defined(OPSYS)
-OPSYS!=3D	${UNAME} -s
+OPSYS!=3D	echo FreeBSD
 .endif
 _EXPORTED_VARS+=3D	OPSYS
=20
 .if !defined(_OSRELEASE)
-_OSRELEASE!=3D	${UNAME} -r
+_OSRELEASE!=3D	echo 12.0-CURRENT
 .endif
 _EXPORTED_VARS+=3D	_OSRELEASE
=20

This is because the ${UNAME} use generates empty strings
and those in turn lead to poudriere rejecting the
attempted builds for version comparison mismatches
with _OSRELEASE involved.

=3D=3D=3D
Mark Millard
markmi at dsl-only.net




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4D01E4AF-9371-4D4C-AD06-034F378AE8C4>