New RCorder: abi loaded too late
Doug Barton
dougb at FreeBSD.org
Fri Feb 17 18:14:14 PST 2006
Doug Barton wrote:
> I won't object to your original suggestion,
Oops, spoke too soon. :) Seriously though, I should have tested this first.
Turns out that doing it as you suggested creates a circular dependency (and
causes rcorder compiled with the new malloc to dump core):
Loading configuration files.
rcorder: Circular dependency on provision `rpcbind' in file
`/etc/rc.d/nfsclient'.
rcorder: Circular dependency on file `/etc/rc.d/nisdomain'.
rcorder: Circular dependency on provision `rpcbind' in file
`/etc/rc.d/nisdomain'.
rcorder: Circular dependency on provision `SERVERS' in file
`/etc/rc.d/nisdomain'.
rcorder: Circular dependency on provision `rpcbind' in file `/etc/rc.d/ypserv'.
rcorder: Circular dependency on provision `rpcbind' in file `/etc/rc.d/amd'.
rcorder: Circular dependency on provision `SERVERS' in file
`/etc/rc.d/ipxrouted'.
rcorder: Circular dependency on provision `rpcbind' in file `/etc/rc.d/mountd'.
rcorder: Circular dependency on provision `SERVERS' in file `/etc/rc.d/DAEMON'.
rcorder: Circular dependency on provision `rpcbind' in file
`/etc/rc.d/bootparams'.
rcorder: Circular dependency on provision `named' in file `/etc/rc.d/ntpdate'.
Assertion failed: (reg->next.u.s.slot == slot), function arena_undelay, file
/usr/local/src/lib/libc/stdlib/malloc.c, line 2312.
Abort trap (core dumped)
rcorder: Circular dependency on provision `LOGIN' in file `/etc/rc.d/archdep'.
The attached patch sorts out the mess, and further illustrates why I dislike
BEFORE. :) I boot-tested it and it works for me, so I intend to commit it
unless there is objection.
Doug
PS to jasone, the trace on the core file shows that the error in rcorder is
at line 761 of rcorder.c (which was recently patched to fix a different kind
of core dumping problem). I'd be glad to provide you or the list with more
details if there is interest.
--
This .signature sanitized for your protection
-------------- next part --------------
Index: SERVERS
===================================================================
RCS file: /usr/local/ncvs/src/etc/rc.d/SERVERS,v
retrieving revision 1.5
diff -u -r1.5 SERVERS
--- SERVERS 7 Oct 2004 13:55:25 -0000 1.5
+++ SERVERS 18 Feb 2006 01:51:10 -0000
@@ -5,7 +5,7 @@
#
# PROVIDE: SERVERS
-# REQUIRE: mountcritremote
+# REQUIRE: mountcritremote abi
# This is a dummy dependency, for early-start servers relying on
# some basic configuration.
Index: abi
===================================================================
RCS file: /usr/local/ncvs/src/etc/rc.d/abi,v
retrieving revision 1.7
diff -u -r1.7 abi
--- abi 24 Jan 2006 18:58:48 -0000 1.7
+++ abi 18 Feb 2006 01:50:03 -0000
@@ -4,8 +4,7 @@
#
# PROVIDE: abi
-# REQUIRE: LOGIN
-# BEFORE: securelevel
+# REQUIRE: archdep
# KEYWORD: nojail
. /etc/rc.subr
Index: archdep
===================================================================
RCS file: /usr/local/ncvs/src/etc/rc.d/archdep,v
retrieving revision 1.10
diff -u -r1.10 archdep
--- archdep 13 Feb 2006 21:41:32 -0000 1.10
+++ archdep 18 Feb 2006 01:49:59 -0000
@@ -4,8 +4,7 @@
#
# PROVIDE: archdep
-# REQUIRE: LOGIN
-# BEFORE: abi
+# REQUIRE: mountcritremote
# KEYWORD: nojail
. /etc/rc.subr
More information about the freebsd-current
mailing list