Quoth Andrew.Rutz at sun.com on Fri, Jun 15, 2007 at 02:45:57PM -0500:
>  I modified syseventd's 'start' method to have a "sleep 30" (so that
> I could investigate a race condition).
> 
>  I then see this in syseventd's log:
> 
> [ Jun 15 14:30:36 Executing start method ("/lib/svc/method/svc-syseventd 
> start") ]
> [ Jun 15 14:30:37 Method "start" exited with status 0 ]
> [ Jun 15 14:37:55 Method "start" exited with status 0 ]
> 
> syseventd fork()s and leaves a daemon running.  are the parent and
> child processes BOTH saying they completed the 'start' method ?  eg,
> is there a libscf func being used at runtime to declare that 'start'
> is complete?  (eg, syseventd's binary links libscf:

For contract services like syseventd, "start" is judged to be complete
when the start method exits successfully.  I can't think of a reason why
you would see two start exits in a row without an intervening start
start, unless perhaps you rebooted inbetween.  File a bug, and include
the output of "echo ::startd_log | mdb -p `pgrep startd`" just after the
second start is invoked.


David

Reply via email to