Zhu Xiao wrote: > Hi All, > I was running a powercycle test on huron. My script boots,then shutdowns > solaris by issuing a "shutdown" command right after solaris boots. So > there were fewer services were stopping. > > # shutdown -i0 -g0 -y > ... > # svc.startd: The system is coming down. Please wait. > svc.startd: 74 system services are now being stopped. > <------ (hang occurs here) > > One in hundreds of cycles, the solaris shutdown hang. Solaris kernels > looked fine by examining the coredumps. Looking through /var/svc/log, > the following services started, but didn't log the "stop" method in > /var/svc/log. > > milestone-devices:default.log: > milestone-single-user:default.log: > network-initial:default > network-routing-setup:default > network-rpc-bind:default > network-rpc-keyserv:default > system-cryptosvc:default > system-device-fc-fabric:default > system-filesystem-local:default > system-identity:domain > system-manifest-import:default > system-sysevent:default > > Any suggestion is greatly appreciated. > > Thanks, > > -Zhu > _______________________________________________ > smf-discuss mailing list > smf-discuss at opensolaris.org > What you can do is to turn on svc.startd debug logging by doing the followings:
/usr/sbin/svccfg -s system/svc/restarter:default svc:/system/svc/restarter:default> addpg options application svc:/system/svc/restarter:default> setprop options/logging = astring: debug svc:/system/svc/restarter:default> exit And reboot. You can discard the log of good boots and only keep the one that looks suspicious and hopefully the log can tell some clues on what's going on when the system is hung. Coredump with user pages helps as well. You can set dump device up by doing: dumpadm -c all boot kmdb enter kmdb when you see the hang systemdump and exam the svc.startd process. But get the dump with user pages is sort of tricky and depends on how early the hang occurs. If the hang occurs pretty early then we may need to do something trick on the init process. First I would suggest that you run 'boot -m verbose' to see how early the hang is and of course with the debug logging turned on. Hope this helps. Steve