cygrunsrv - services enters stopped state if underlying program exits or is killed - doesn't auto restart

Kizito Porta Balanyà
Wed Jan 28 22:57:00 GMT 2015

2015-01-28 12:55 GMT+01:00 Corinna Vinschen <>:
> On Jan 28 11:18, Corinna Vinschen wrote:
>> On Jan 27 15:02, Cary Lewis wrote:
>> > On Tue, Jan 27, 2015 at 4:09 AM, Corinna Vinschen
>> > --neverexits works, but not if the program that cygrunsrv starts is
>> > stopped with a kill -9 signal. Perhaps the -9 signal propagates to the
>> > cygrunsrv.exe program?
>> Hmm, yes.  Cygrunsrv evaluates how the service process ended, and only
>> if it exited the neverexits logic comes into play.  If it ended due to
>> a signal, it does nothing.
>> This is unfortunate because it diminishes the usefulness of --neverexits.
>> I could patch cygrunsrv to do this:
>>   If the service exited due to a signal, and if that signal is not the
>>   defined termination or shutdown signal (default SIGTERM for both),
>>   and if --neverexits has been defined, then performas the neverexits
>>   action.
>> Does that sound ok?

I would say that this should be the default behavior:

If the signal is SIGTERM and the service is configured to restart the
program, then restart the program.

So, --neverxits should be the default behaviour of cygrunsrv , so
--neverexists shouldn't exist as an option. :) But perhaps I'm wrong
and I don't understand completely the problem.

Thanks for your time.

>> The patch is simple and I could upload a new cygrunsrv today or tomorrow.
> Corinna
> --
> Corinna Vinschen                  Please, send mails regarding Cygwin to
> Cygwin Maintainer                 cygwin AT cygwin DOT com
> Red Hat

Problem reports:
Unsubscribe info:

More information about the Cygwin mailing list