6635211f80
| Fix system shutdown timeout handling by again supporting longer running | shutdown procedures (which have a duration of more than 120 seconds). | | We have two user-space affecting shutdown timeouts: a "soft" one in | /etc/rc.shutdown and a "hard" one in init(8). The first one can be | configured via /etc/rc.conf variable "rcshutdown_timeout" and defaults | to 30 seconds. The second one was originally (in 1998) intended to be | configured via sysctl(8) variable "kern.shutdown_timeout" and defaults | to 120 seconds. | | Unfortunately, the "kern.shutdown_timeout" was declared "unused" in 1999 | (as it obviously is actually not used within the kernel itself) and | hence was intentionally but misleadingly removed in revision 1.107 from | init_main.c. Kernel sysctl(8) variables are certainly a wrong way to | control user-space processes in general, but in this particular case the | sysctl(8) variable should have remained as it supports init(8), which | isn't passed command line flags (which in turn could have been set via | /etc/rc.conf), etc. | | As there is already a similar "kern.init_path" sysctl(8) variable which | directly affects init(8), resurrect the init(8) shutdown timeout under | sysctl(8) variable "kern.init_shutdown_timeout". But this time document | it as being intentionally unused within the kernel and used by init(8). | Also document it in the manpages init(8) and rc.conf(5). | | Reviewed by: phk | MFC after: 2 weeks | | Revision Changes Path | 1.48 +7 -1 src/sbin/init/init.8 | 1.61 +1 -1 src/sbin/init/init.c | 1.264 +16 -1 src/share/man/man5/rc.conf.5 | 1.257 +11 -0 src/sys/kern/init_main.c Approved by: re (scottl) |
||
---|---|---|
.. | ||
init.8 | ||
init.c | ||
Makefile | ||
NOTES | ||
pathnames.h |