summaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux/sparc/kernel_sigaction.h
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/unix/sysv/linux/sparc/kernel_sigaction.h')
-rw-r--r--sysdeps/unix/sysv/linux/sparc/kernel_sigaction.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/sysdeps/unix/sysv/linux/sparc/kernel_sigaction.h b/sysdeps/unix/sysv/linux/sparc/kernel_sigaction.h
new file mode 100644
index 0000000000..bee7e9cd03
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/sparc/kernel_sigaction.h
@@ -0,0 +1,10 @@
+/* SPARC 'struct __new_sigaction' is similar to generic Linux UAPI with
+ a sa_restorer field, even though function is passed as an argument
+ to rt_sigaction syscall. */
+#define SA_RESTORER 0x04000000
+#include <sysdeps/unix/sysv/linux/kernel_sigaction.h>
+
+#define SET_SA_RESTORER(kact, act) \
+ (kact)->sa_restorer = NULL
+#define RESET_SA_RESTORER(act, kact) \
+ (act)->sa_restorer = (kact)->sa_restorer