Subject: Problems with rc.d at boot time
To: None <tech-userlevel@netbsd.org>
From: Mike M. Volokhov <mishka@apk.od.ua>
List: tech-userlevel
Date: 02/09/2004 18:46:58
Greetings!

I'm faced within few boot problems using rc.d framework on NetBSD/i386
1.6.2

1) The rc.d/altqd won't start on boot. It even doesn't tried to start
when system being booted, but it works perfectly on manual start/stop.
The -current have not this problems and the rc.d/altqd from -current
solves this problem. The diff:

--- src-stable/etc/rc.d/altqd	2002-08-10 17:31:19.000000000 +0300
+++ src-current/etc/rc.d/altqd	2003-03-25 19:42:29.000000000 +0200
@@ -1,11 +1,11 @@
 #!/bin/sh
 #
-# $NetBSD: altqd,v 1.2 2002/03/22 04:33:58 thorpej Exp $
+# $NetBSD: altqd,v 1.3 2003/03/10 18:17:06 lukem Exp $
 #
 
 # PROVIDE: altqd
-# REQUIRE: network mountcritlocal dhclient
-# BEFORE:  NETWORKING
+# REQUIRE: mountcritremote
+# BEFORE:  SERVERS
 # KEYWORD: shutdown
 
 . /etc/rc.subr

Intersting, that "rcorder /etc/rc.d/*" shows me that script in list.


2) Some programs just magically stops when system is booting. I.e. when
system boots the appropriate messages are displayed (such as "Starting
foo."), but then that processes just stopped without any intervention
from outside. This happens even with programs loaded from rc.local. Some
of such software are:

	spamass-milter
	clamav-milter
	ippingmon

All three from pkgsrc. Possible there are may existent some another
software, but that three works very identicial on two different systems
(both 1.6.2). The ktrace shows (within few lines around):

   193 spamass-milter CALL  __sigprocmask14(0x3,0x48084dd8,0x8077cd8)
   193 spamass-milter RET   __sigprocmask14 0
   193 spamass-milter CALL  select(0x7,0x8077de8,0x8077d68,0x8077ce8,0x8077490)
 * 193 spamass-milter PSIG  SIGHUP caught handler=0x4807a428 mask=() code=0x0
   193 spamass-milter RET   select -1 errno 4 Interrupted system call
   193 spamass-milter CALL  write(0x4,0x8077333,0x1)
   193 spamass-milter GIO   fd 4 wrote 1 bytes

When I use "/etc/rc.d/foo start" after system has been booted, it works
just a perfect. When I use "pkill foo" the ktrace shows me SIGINT
instead of SIGHUP shown below.

Does anybody have this problems too? Any comments, please.

--
Kind regards,
Mishka.