1UNW_IS_SIGNAL_FRAME(3) Programming Library UNW_IS_SIGNAL_FRAME(3)
2
3
4
6 unw_is_signal_frame -- check if current frame is a signal frame
7
9 #include <libunwind.h>
10
11 int unw_is_signal_frame(unw_cursor_t *cp);
12
14 The unw_is_signal_frame() routine returns a positive value if the cur‐
15 rent frame identified by cp is a signal frame, and a value of 0 other‐
16 wise. For the purpose of this discussion, a signal frame is a frame
17 that was created in response to a potentially asynchronous interrup‐
18 tion. For UNIX and UNIX-like platforms, such frames are normally cre‐
19 ated by the kernel when delivering a signal. In a kernel-environment,
20 a signal frame might, for example, correspond to a frame created in
21 response to a device interrupt.
22
23 Signal frames are somewhat unusual because the asynchronous nature of
24 the events that create them require storing the contents of registers
25 that are normally treated as scratch (``caller-saved'') registers.
26
28 On successful completion, unw_is_signal_frame() returns a positive
29 value if the current frame is a signal frame, or 0 if it is not. Other‐
30 wise, a negative value of one of the error-codes below is returned.
31
33 unw_is_signal_frame() is thread-safe as well as safe to use from a sig‐
34 nal handler.
35
37 UNW_ENOINFO
38 Libunwind is unable to determine whether or not the current
39 frame is a signal frame.
40
42 libunwind(3), unw_get_reg(3), unw_set_reg(3), unw_get_fpreg(3),
43 unw_set_fpreg(3)
44
46 David Mosberger-Tang
47 Hewlett-Packard Labs
48 Palo-Alto, CA 94304
49 Email: davidm@hpl.hp.com
50 WWW: http://www.hpl.hp.com/research/linux/libunwind/.
51
52
53
54Programming Library 05 August 2004 UNW_IS_SIGNAL_FRAME(3)