Date: Wed, 21 Jul 1999 22:16:38 GMT From: jhs@FreeBSD.ORG To: FreeBSD-gnats-submit@FreeBSD.ORG Subject: conf/12745: diffs to delay start of amd rwhod timed on laptops to avoid failure Message-ID: <199907212216.WAA08818@jhs.muc.de>
index | next in thread | raw e-mail
>Number: 12745
>Category: conf
>Synopsis: diffs to delay start of amd rwhod timed on laptops to avoid fail
>Confidential: no
>Severity: serious
>Priority: high
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Wed Jul 21 15:50:01 PDT 1999
>Closed-Date:
>Last-Modified:
>Originator: Julian H. Stacey jhs@freebsd.org
>Release: FreeBSD 3.2-RELEASE i386
>Organization:
>Environment:
Standard laptop using Release-3.2 (non PAO) & pcmcia pccard ether
>Description:
amd rwhod timed start before ether is configured, & fail,
up till now everyone has to hand patch this in EG rc.local
>How-To-Repeat:
Greg Lehey <grog@lemis.com> (laptop owner) has also seen this problem
>Fix:
I append patches (Also copied to freebsd-mobile@)
against 3.2-RELEASE (non PAO), as running on my desktops & laptop,
for /etc/{defaults/rc.conf pccard_ether rc.network}, (also for curren).
A few more daemons may need to later be moved within "if [" as
I don't use, so havent tested EG mrouted rpc.ypxfrd.
PS
To keep the diffs minimal & readable, I avoided indenting for my new if's,
The start sequence for different daemons remains clearly visible, as I
I avoided splitting the 3 procedures in rc.network into sub procedures, for
desktop & laptop.
-------------
*** 3.2-RELEASE/etc/defaults/rc.conf Mon Feb 15 11:45:33 1999
--- new-jhs/etc/defaults/rc.conf Wed Jul 21 18:01:07 1999
***************
*** 20,25 ****
--- 20,36 ----
pccard_enable="NO" # Set to YES if you want to configure PCCARD devices.
pccard_mem="DEFAULT" # If pccard_enable=YES, this is card memory address.
pccard_ifconfig="NO" # Specialized pccard ethernet configuration (or NO).
+ # In addition to 3.2-RELEASE function in
+ # /etc/pccard_ether
+ # the following extra notes now apply:
+ # Typically one of:
+ # "DHCP"
+ # "host.domain -link0 link1 -link2"
+ # If not "NO", assume a pcmcia ethernet,
+ # with slow recognition of card by pccardd,
+ # where some rc.network processes (EG timed amd rwhod
+ # (perhaps UDP based ?)) would otherwise die,
+ # so they are now called via /etc/pccard.conf "insert"
local_startup="/usr/local/etc/rc.d /usr/X11R6/etc/rc.d" # startup script dirs.
local_periodic="/usr/local/etc/periodic /usr/X11R6/etc/periodic" # periodic script dirs
rc_conf_files="/etc/rc.conf /etc/rc.conf.local"
*** 3.2-RELEASE/etc/pccard_ether Sat Jun 19 23:18:13 1999
--- new-jhs/etc/pccard_ether Wed Jul 21 19:24:51 1999
***************
*** 53,55 ****
--- 53,63 ----
route add ${route_args}
done
fi
+
+ if [ "x$pccard_ifconfig" != "xNO" ] ; then #{
+ if [ -f /etc/rc.network ]; then
+ . /etc/rc.network
+ fi
+ network_pass2 pccard_supplementary # xntpd, timed
+ network_pass3 pccard_supplementary # amd, rwhod
+ fi #}
*** 3.2-RELEASE/etc/rc.network Mon Feb 15 11:45:33 1999
--- new-jhs/etc/rc.network Wed Jul 21 19:29:47 1999
***************
*** 194,199 ****
--- 194,201 ----
network_pass2() {
echo -n 'Doing additional network setup:'
+ if [ "X$1" != "X"pccard_supplementary ]; then #{
+ # Non laptop, or laptop not on supplementary pass.
if [ "X${named_enable}" = X"YES" ]; then
echo -n ' named'; ${named_program-"named"} ${named_flags}
fi
***************
*** 201,206 ****
--- 203,213 ----
if [ "X${ntpdate_enable}" = X"YES" ]; then
echo -n ' ntpdate'; ${ntpdate_program} ${ntpdate_flags} >/dev/null 2>&1
fi
+ fi #}
+
+ if [ \( "X${pccard_ifconfig}" = X"NO" \) -o \
+ \( "X$1" = "X"pccard_supplementary \) ]; then #{
+ # Non laptop, or laptop on supplementary pccard pass.
if [ "X${xntpd_enable}" = X"YES" ]; then
echo -n ' xntpd'; ${xntpd_program} ${xntpd_flags}
***************
*** 209,215 ****
--- 216,225 ----
if [ "X${timed_enable}" = X"YES" ]; then
echo -n ' timed'; timed ${timed_flags}
fi
+ fi #}
+ if [ "X$1" != "X"pccard_supplementary ]; then #{
+ # Non laptop, or laptop not yet on supplementary pass.
if [ "X${portmap_enable}" = X"YES" ]; then
echo -n ' portmap'; portmap ${portmap_flags}
fi
***************
*** 249,262 ****
--- 259,276 ----
if [ -n "${atm_pass2_done}" ]; then
atm_pass3
fi
+ fi #}
echo '.'
network_pass2_done=YES
}
+
network_pass3() {
echo -n 'Starting final network daemons:'
+ if [ "X$1" != "X"pccard_supplementary ]; then #{
+ # Non laptop, or laptop not yet on supplementary pass.
if [ "X${nfs_server_enable}" = X"YES" -a -r /etc/exports ]; then
echo -n ' mountd'
if [ "X${weak_mountd_authentication}" = X"YES" ]; then
***************
*** 282,288 ****
--- 296,306 ----
>/dev/null 2>&1
fi
fi
+ fi #}
+ if [ \( "X${pccard_ifconfig}" = X"NO" \) -o \
+ \( "X$1" = "X"pccard_supplementary \) ]; then #{
+ # Non laptop, or laptop on supplementary pccard pass.
if [ "X${amd_enable}" = X"YES" ]; then
echo -n ' amd'
if [ "X${amd_map_program}" != X"NO" ]; then
***************
*** 294,300 ****
--- 312,321 ----
if [ "X${rwhod_enable}" = X"YES" ]; then
echo -n ' rwhod'; rwhod ${rwhod_flags}
fi
+ fi #}
+ if [ "X$1" != "X"pccard_supplementary ]; then #{
+ # Non laptop, or laptop not yet on supplementary pass.
# Kerberos runs ONLY on the Kerberos server machine
if [ "X${kerberos_server_enable}" = X"YES" ]; then
if [ "X${kerberos_stash}" = "XYES" ]; then
***************
*** 323,328 ****
--- 344,350 ----
echo -n ' natd'; natd ${natd_flags} ${natd_ifarg}
fi
+ fi #}
echo '.'
network_pass3_done=YES
}
-------------
Extra patches to run against current
(version as of ctm: "Jul 21 18:25 src-cur.3942.gz")
after running the release patches, as 2 Rel. patches break on current.
*** src-cur.3942/etc/rc.conf Wed Jul 21 22:48:56 1999
--- new-jhs/etc/rc.conf Wed Jul 21 23:21:34 1999
***************
*** 22,27 ****
--- 22,38 ----
pccard_enable="NO" # Set to YES if you want to configure PCCARD devices.
pccard_mem="DEFAULT" # If pccard_enable=YES, this is card memory address.
pccard_ifconfig="NO" # Specialized pccard ethernet configuration (or NO).
+ # In addition to 3.2-RELEASE function in
+ # /etc/pccard_ether
+ # the following extra notes now apply:
+ # Typically one of:
+ # "DHCP"
+ # "host.domain -link0 link1 -link2"
+ # If not "NO", assume a pcmcia ethernet,
+ # with slow recognition of card by pccardd,
+ # where some rc.network processes (EG timed amd rwhod
+ # (perhaps UDP based ?)) would otherwise die,
+ # so they are now called via /etc/pccard.conf "insert"
pccardd_flags="" # Additional flags for pccardd.
pccard_conf="/etc/pccard.conf.sample" # pccardd(8) config file
local_startup="/usr/local/etc/rc.d /usr/X11R6/etc/rc.d" # startup script dirs.
*** src-cur.3942/etc/rc.network Wed Jul 21 22:48:59 1999
--- new-jhs//etc/rc.network Wed Jul 21 23:25:44 1999
***************
*** 358,363 ****
--- 379,385 ----
fi
unset stash_flag
fi
+ fi #}
echo '.'
network_pass3_done=YES
--------
Julian
Julian H. Stacey http://www.freebsd.org/~jhs/
>Release-Note:
>Audit-Trail:
>Unformatted:
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message
home |
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199907212216.WAA08818>
