about summary refs log tree commit diff
path: root/arch
diff options
context:
space:
mode:
authorSzabolcs Nagy <nsz@port70.net>2016-01-27 00:54:25 +0000
committerRich Felker <dalias@aerifal.cx>2016-01-26 22:31:21 -0500
commit9a3b8f97a160ce292dcf0ef2a9358fa0e11e9ee3 (patch)
treee48a566d97b06975efc91d8d74d76f2db446f1a8 /arch
parent22f84829afa06bba9d220bd0f7b1bce912987297 (diff)
downloadmusl-9a3b8f97a160ce292dcf0ef2a9358fa0e11e9ee3.tar.gz
musl-9a3b8f97a160ce292dcf0ef2a9358fa0e11e9ee3.tar.xz
musl-9a3b8f97a160ce292dcf0ef2a9358fa0e11e9ee3.zip
fix siginfo_t for mips
si_errno and si_code are swapped in mips siginfo_t compared to other
archs and some si_code values are different.  This fix is required
for POSIX timers to work.

based on patch by Dmitry Ivanov.
Diffstat (limited to 'arch')
-rw-r--r--arch/mips/bits/signal.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/mips/bits/signal.h b/arch/mips/bits/signal.h
index 818e0a7b..889f77e8 100644
--- a/arch/mips/bits/signal.h
+++ b/arch/mips/bits/signal.h
@@ -73,6 +73,15 @@ typedef struct __ucontext {
 #define SIG_UNBLOCK   2
 #define SIG_SETMASK   3
 
+#undef SI_ASYNCIO
+#undef SI_MESGQ
+#undef SI_TIMER
+#define SI_ASYNCIO (-2)
+#define SI_MESGQ (-4)
+#define SI_TIMER (-3)
+
+#define __SI_SWAP_ERRNO_CODE
+
 #endif
 
 #define SIGHUP    1