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: Threads


On 20/10/2014 14:03, Ken Brown wrote:
Or is there some other plausible explanation for "impossible" crashes?
This can't just be a result of a gdb bug, because in at least one case
the assertion can be shown to be valid by using printf instead of gdb.

[*] By "impossible" I mean that examination of the relevant variables in
gdb shows that the assertions are in fact true.  Two ongoing examples are

    http://debbugs.gnu.org/cgi/bugreport.cgi?bug=18438
    http://debbugs.gnu.org/cgi/bugreport.cgi?bug=18769

As a suggestion, you might want to also take a careful look at how signal delivery is implemented in cygwin on x86_64

I had a vague idea that there was, at some time in the past, a fix made for register corruption on x86_64 after a signal was handled, but I can't find it now, so maybe I imagined it. But if for e.g. the flags register was getting corrupted when a signal interrupts the main thread, that could perhaps also explain what is being seen.

(More generally, it doesn't have to be another thread which is causing these problems, it could be some form of interrupt)


--
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]