incubator-stdcxx-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Martin Sebor <se...@roguewave.com>
Subject Re: negative exit status in Windows builds
Date Fri, 10 Aug 2007 16:07:55 GMT
Farid Zaripov wrote:
>> -----Original Message-----
>> From: Martin Sebor [mailto:sebor@roguewave.com] 
>> Sent: Friday, August 10, 2007 6:36 PM
>> To: stdcxx-dev@incubator.apache.org
>> Subject: Re: negative exit status in Windows builds
>>
>> Farid Zaripov wrote:
>>>> -----Original Message-----
>>>> From: Martin Sebor [mailto:sebor@roguewave.com]
>>>> Sent: Wednesday, August 08, 2007 11:23 PM
>>>> To: stdcxx-dev@incubator.apache.org
>>>> Subject: Re: negative exit status in Windows builds
>>>>
>>>> STATUS_STACK_OVERFLOW can be mapped to SIGSTKFLT (used for this 
>>>> purpose on Linux).
>>>   But SIGSTKFLT is signals when the coprocessor experiences a stack 
>>> fault
>>> (http://en.wikipedia.org/wiki/SIGSTKFLT) and we have program stack 
>>> overflow.
>> What's the difference?
> 
>   The coprocessor stack is the memory inside coprocessor (set of the
> registers)
> and program stack is the part of the common RAM. 

I see. You're right, it probably wouldn't be appropriate to map
STATUS_STACK_OVERFLOW on the main processor to a coprocessor error,
even if it's not used anymore. Although by mapping to SIGSEGV we
are losing a valuable piece of information about the failure. It
would be nice if we could find a way to preserve it.

FWIW, I haven't found much information on SIGSTKFLT on the net.
The most informative description I came across is this one:

SIGSTKFLT
	
     This signal is defined only by Linux. This signal showed up in
     the earliest versions of Linux, intended to be used for stack
     faults taken by the math coprocessor. This signal is not
     generated by the kernel, but remains for backward compatibility.

http://book.chinaunix.net/special/ebook/addisonWesley/APUE2/0201433079/ch10lev1sec2.html

Martin

Mime
View raw message