Stefan Krah <stefan-use...@bytereef.org> added the comment:

STINNER Victor <rep...@bugs.python.org> wrote:
> Note: To avoid the signal-safe requirement, another solution is to use 
> sigsetjmp()+siglongjmp().

FWIW, there is a caveat in the OpenBSD man page concerning the use of
siglongjmp():

http://www.openbsd.org/cgi-bin/man.cgi?query=sigsetjmp&apropos=0&sektion=0&manpath=OpenBSD+Current&arch=i386&format=htm

"Use of longjmp() or siglongjmp() from inside a signal handler is not as
 easy as it might seem.  Generally speaking, all possible code paths
 between the setjmp() and longjmp() must be signal race safe, as discussed
 in signal(3).  Furthermore, the code paths must not do resource
 management (such as open(2) or close(2)) without blocking the signal in
 question, or resources might be mismanaged.  Obviously this makes
 longjmp() much less useful than previously thought."

----------
title: Display Python backtrace on SIGSEGV,     SIGFPE and fatal error -> 
Display Python backtrace on SIGSEGV, SIGFPE and fatal error

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue8863>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to