This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Bug: Synchronous signals broken on Cygwin 64


On Thu, 26 Apr 2018 09:57:59, Thomas Zimmermann wrote:

> Hello mailing list,
> 
> I noticed that synchronous signals (e.g., SIGSEGV, SIGFPE) appear to be
> broken on 64-bit Cygwin systems. I could not find additional information
> on the mailing list. If this is not already a known problem, you'll find
> some analysis below.
> 
> I use Cygwin DLL 2.10 with all packages up-to-date. My test system runs
> Windows 7.
> 
> The expected behavior is that an installed signal handler runs exactly
> once for a signal and the OS terminates the program if the handler
> returns. This works on 32-bit Cygwin. From my observation, Cygwin 64
> differs in the follow ways:

.. uhm, unless SA_RESETHAND (sa_flags) has been specified, I expect the
handler to be invoked again and again ...

And that is what I observe on Linux ...

> 1) Generating a synchronous signal on the main thread, makes the signal
> handler enter an endless loop. The attached test 'syncsig.c' illustrates
> this.
> 
> 2) Generating a synchronous signal on an additional POSIX thread ignores
> the installed signal handler entirely. The handler does not run and the
> program gets terminated immediately. The attached test 'syncsig_mt.c'
> illustrates this.

Yes, this behaviour is wrong ...

Henri


--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]