Date: Sun, 30 Aug 2015 15:59:46 +0000 From: bugzilla-noreply@freebsd.org To: freebsd-bugs@FreeBSD.org Subject: [Bug 202726] rcorder: Circular dependency on provision `mountcritremote' in file `/etc/rc.d/ldconfig'. Message-ID: <bug-202726-8-Tpliax5rHS@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-202726-8@https.bugs.freebsd.org/bugzilla/> References: <bug-202726-8@https.bugs.freebsd.org/bugzilla/>
next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=202726 Jilles Tjoelker <jilles@FreeBSD.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jilles@FreeBSD.org --- Comment #1 from Jilles Tjoelker <jilles@FreeBSD.org> --- Having a cyclic dependency in rc.d is bad because it makes it hard to predict in what order things are started. The cycle here is: * ldconfig depends on mountcritremote via REQUIRE: line in ldconfig. This is needed to allow /usr/local etc to be NFS-mounted on systems that aren't "diskless". Perhaps that can be dropped. The actual access happens to allow for libdata/ldconfig files and aout libraries; if those didn't exist, it would be possible to change ldconfig to write pathnames into /var/run/ld-elf.so.hints without checking for existence. * mountcritremote depends on devd via BEFORE: line in devd. This is clearly correct, to allow mounting filesystems via devices that need devd to load their driver or do other setup. * devd depends on ldconfig via REQUIRE: line in devd. This is new, to allow calling /usr/local binaries from devd actions. There seem valid use cases for all three dependencies, but not all at the same time. The static dependency system is too crude to handle it. Doing it dynamically seems hard as well -- how should devd know that it needs to wait for ldconfig before running a particular action? Alternatively, we could run ldconfig twice and satisfy all three dependencies to some degree (obviously, an action to bring up a device needed for some filesystem cannot use libraries on that filesystem). -- You are receiving this mail because: You are the assignee for the bug.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-202726-8-Tpliax5rHS>