Date: Fri, 1 Jun 2001 03:27:06 -0700 (PDT) From: Jean-Luc.Richier@imag.fr To: freebsd-gnats-submit@FreeBSD.org Subject: conf/27811: bad order of rpc.lockd and rpc.statd starts in rc.networks Message-ID: <200106011027.f51AR6F09256@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 27811 >Category: conf >Synopsis: bad order of rpc.lockd and rpc.statd starts in rc.networks >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Jun 01 03:30:01 PDT 2001 >Closed-Date: >Last-Modified: >Originator: Jean-Luc Richier >Release: FreeBSD5.0 current >Organization: IMAG >Environment: FreeBSD lagavulin.imag.fr 5.0-CURRENT FreeBSD 5.0-CURRENT #1 >Description: In FreeBSD current rpc.lockd contacts the local rpc.statd daemon but as rpc.statd is started after rpc.lockd in .etc.rc.network, the initial rpc.lockd (at boot time) fails after a few minutes. There is no messages, as the messages are displayed using the errx function, which do not print anything for a daemon ! If rpc.lockd is started by hand afterwards, it runs correctly >How-To-Repeat: - enable rpc.statd and rpc.lockd in /etc/rc.conf - reboot the machine - do some ps -ax | grep rpc (or truss -p <rpc.lockd_pid>) One sees that rpc.lockd runs for a few minutes and then exit >Fix: The simplest solution is to reverse rpc.statd and rpc.lockd calls in /etc/rc.network. An other solution is to make rpc.lockd wait for rpc.statd (it is almost the case: lockd retries on RPC_PROGUNAVAIL error, but here the error is RPC_TIMEDOUT) *** etc/rc.network.DIST Sat May 19 15:10:41 2001 --- etc/rc.network Wed May 30 11:55:10 2001 *************** *** 605,619 **** sysctl -w vfs.nfs.bufpackets=${nfs_bufpackets} > /dev/null fi ! case ${rpc_lockd_enable} in [Yy][Ee][Ss]) ! echo -n ' rpc.lockd'; rpc.lockd ;; esac ! case ${rpc_statd_enable} in [Yy][Ee][Ss]) ! echo -n ' rpc.statd'; rpc.statd ;; esac fi --- 605,620 ---- sysctl -w vfs.nfs.bufpackets=${nfs_bufpackets} > /dev/null fi ! # The statd program must already be registered when lockd runs. ! case ${rpc_statd_enable} in [Yy][Ee][Ss]) ! echo -n ' rpc.statd'; rpc.statd ;; esac ! case ${rpc_lockd_enable} in [Yy][Ee][Ss]) ! echo -n ' rpc.lockd'; rpc.lockd ;; esac fi >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200106011027.f51AR6F09256>