Re: Recursive SIGSEGV question

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 3/25/19 2:01 PM, Florian Weimer wrote:
> * Xi Ruoyao:
> 
>> On 2019-03-25 13:06 +0000, Jonny Grant wrote:
>>>
>>> I built & ran with the Sanitizer, it seems it's also stack overflow 
>>> within the operator new()
>>>
>>> I had thoughts GCC would generate code that monitored the stack size and 
>>> aborted with a clear message when the stack size was exceeded. Looked 
>>> online, and it doesn't seem to be the case.
>>
>> Impossible.  We can't distinguish "stack overflow" with other segmentation
>> faults.
> 
> I think “impossible” is too strong.

It is. We do it with stack banging and a few guard pages in the HotSpot JVM.
The problem is that recovering well enough to throw an exception requires
some quite hairy non-portable code.

-- 
Andrew Haley
Java Platform Lead Engineer
Red Hat UK Ltd. <https://www.redhat.com>
EAC8 43EB D3EF DB98 CC77 2FAD A5CD 6035 332F A671



[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux