[patch] fix spurious SIGSEGV faults under Cygwin
Mon Feb 6 18:02:00 GMT 2006
On Thu, Feb 02, 2006 at 12:05:58PM -0500, Christopher Faylor wrote:
>On Thu, Feb 02, 2006 at 08:00:01AM -0800, Brian Dessent wrote:
>>Brian Dessent wrote:
>>> #define _CYGWIN_SIGNAL_STRING "cYgSiGw00f"
>>> +#define _CYGWIN_FAULT_IGNORE_STRING "cYgfAuLtIg"
>>> +#define _CYGWIN_FAULT_NOIGNORE_STRING "cYgNofAuLtIg"
>>Sigh, this breaks strace under Cygwin, I should have tested more. Sorry
>>about that. Apparently strace expects anything starting with the 'cYg'
>>prefix to be followed by a hex number. I thought that since
>>_CYGWIN_SIGNAL_STRING already existed and didn't follow that format it
>>was safe to add more, but that's not the case.
>>So, should I pick another prefix that's not 'cYg'? Or instead use
>>something like "cYg0 ..." since strace seems to just ignore the string
>>if its value is 0? Or something else?
>Thanks for the patch but I've been working on this too and, so far, I think
>it is possible to have a very minimal way of dealing with this problem. I
>haven't had time to delve into it too deeply but I have been exploring this
>problem on and off for a couple of weeks. If the situation at work calms
>down a little I may be able to finish up what I've been working on.
>OTOH, if what I have is really not working then I'll take a look at what
>Again, thanks for the patch. I probably should have sent a heads up that
>I was working on this.
Actually, my minimal solution died in annoying ways. I don't really
So, I opted to push forward on my work to make cygwin signals recognized
(using _CYGWIN_SIGNAL_STRING) by gdb. I have something now which
ignores exceptions in the cygwin DLL when they are based on a myfault
interrupt and it has the added benefit of potentially allowing SIGABRT,
SIGQUIT, and other signals to be noticed by gdb.
So, thanks again for the patch and sorry for the duplication of effort.
More information about the Cygwin-patches