Bug #2372
segfault correct detection failure
0%
Description
The package devel/libsigsegv fails its final diagnostic test on DragonFly.
For information, this does pass on FreeBSD 9.
To repeat:
> cd /usr/pkgsrc/devel/libsigsegv
> bmake
> cd ${WRKOBJDIR}/devel/libsigsegv/work/libsigsegv-2.10/
> gmake check
The output of the fifth test (out of five) should be:
| Starting recursion pass 1.
| Stack overflow 1 caught.
| Starting recursion pass 2.
| Stack overflow 2 caught.
| Segmentation violation correctly detected.
| Segmentation violation correctly detected.
| Test passed.
| PASS: stackoverflow2
The actual output is:
| Starting recursion pass 1.
| Stack overflow 1 caught.
| Starting recursion pass 2.
| Stack overflow 2 caught.
| Segmentation violation misdetected as stack overflow.
| Test passed.
| FAIL: stackoverflow2
The code of the test is here:
http://fossies.org/dox/libsigsegv-2.10/stackoverflow2_8c_source.html
What seems to be happening is that when the stack is exhausted, accessing an illegal memory location triggers the stack overflow handler before the sigsegv handler. I think it's a DragonFly bug.