[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [libunwind] Signal handlers and unw_resume
From: |
David Mosberger |
Subject: |
Re: [libunwind] Signal handlers and unw_resume |
Date: |
Tue, 24 Aug 2004 06:48:48 -0700 |
>>>>> On Tue, 24 Aug 2004 08:39:36 -0500 (CDT), Archie Cobbs <address@hidden>
>>>>> said:
Archie> Thomas Hallgren wrote:
>> > If by "OS" you mean "kernel", then there is no issue: the unw_resume()
>> > will be sufficient.
>> Great! Then there's no issue.
Archie> The only issue I can think of is with restoring the signal mask,
Archie> e.g., like siglongjmp() does. If you only sigjmp() out of a signal
Archie> handler, the signal remains blocked.
Not with unw_resume(3). To quote from the man-page:
if execution in any of the stack frames younger (more deeply nested)
than the one identified by cp was interrupted by a signal, then
unw_resume() will restore all registers as well as the signal mask.
--david