Bootscript functions handle stale pid files poorly
|Reported by:||Owned by:||DJ Lucas|
When the bootscript specifies a pid file to use with the "-p pidfile" argument, *proc functions currently bail out when the referenced file contains an invalid pid. This causes big problems on startup when loadproc returns successfully without actually starting the service.
This might sound obscure, but it usually hurts me after I've had to do a hard boot (they happen) and all my pid files are stale. Then most services (my scripts always use -p when a pidfile is available) fails to start and I'm left with garbage. The only way to fix it is to manually hunt down and remove the stale pid files.
See BLFS ticket #2408 (http://wiki.linuxfromscratch.org/blfs/ticket/2408) for an example.
I'm attaching a patch which changes loadproc, killproc and reloadproc to warn and remove the stale pid files when they are encountered. loadproc then continues instead of bailing out. I ran some testcases with the patch, but I haven't applied the changes to my system yet.