Displaying 3 results from an estimated 3 matches for "d2223843".
Did you mean:
1222843
2020 Aug 28
0
[klibc:ia64-signal-fix] signal: Add config flag for additional sigaction fixup
...* On some architectures, struct sigaction needs additional
+ * changes before passing to the kernel.
+ */
+#ifndef _KLIBC_NEEDS_SIGACTION_FIXUP
+# define _KLIBC_NEEDS_SIGACTION_FIXUP 0
+#endif
+
+
/*
* _KLIBC_STATFS_F_TYPE_64:
*
diff --git a/usr/klibc/sigaction.c b/usr/klibc/sigaction.c
index d2223843..ed4cf5b5 100644
--- a/usr/klibc/sigaction.c
+++ b/usr/klibc/sigaction.c
@@ -28,7 +28,9 @@ int sigaction(int sig, const struct sigaction *act, struct sigaction *oact)
struct sigaction sa;
int rv;
- if (act && (act->sa_flags & needed_flags) != needed_flags) {
+ if (act &&...
2020 Aug 29
0
[klibc:master] signal: Add config flag for additional sigaction fixup
...* On some architectures, struct sigaction needs additional
+ * changes before passing to the kernel.
+ */
+#ifndef _KLIBC_NEEDS_SIGACTION_FIXUP
+# define _KLIBC_NEEDS_SIGACTION_FIXUP 0
+#endif
+
+
/*
* _KLIBC_STATFS_F_TYPE_64:
*
diff --git a/usr/klibc/sigaction.c b/usr/klibc/sigaction.c
index d2223843..a8181a41 100644
--- a/usr/klibc/sigaction.c
+++ b/usr/klibc/sigaction.c
@@ -8,11 +8,17 @@
#include <klibc/sysconfig.h>
__extern void __sigreturn(void);
+
+#if _KLIBC_NEEDS_SIGACTION_FIXUP
+typedef struct sigaction *act_type;
+#else
+typedef const struct sigaction *act_type;
+#endif
+
#i...
2020 Aug 28
0
[klibc:ia64-signal-fix] signal: Move rt_sigaction() argument mangling to arch directories
...+ void (*restorer)(void);
+
+ restorer = (act && act->sa_flags & SA_RESTORER)
+ ? (void (*)(void))((uintptr_t)act->sa_restorer - 8)
+ : NULL;
+ return ____rt_sigaction(sig, act, oact, restorer, size);
+}
diff --git a/usr/klibc/sigaction.c b/usr/klibc/sigaction.c
index 789494db..d2223843 100644
--- a/usr/klibc/sigaction.c
+++ b/usr/klibc/sigaction.c
@@ -8,16 +8,11 @@
#include <klibc/sysconfig.h>
__extern void __sigreturn(void);
-__extern int __sigaction(int, const struct sigaction *, struct sigaction *);
-#ifdef __sparc__
-__extern int __rt_sigaction(int, const struct sig...