diff options
| author | christos <christos@NetBSD.org> | 2002-03-19 20:51:59 +0000 |
|---|---|---|
| committer | christos <christos@NetBSD.org> | 2002-03-19 20:51:59 +0000 |
| commit | bda4b15e05d256cdb9a1fd4bf6b032e2335e597c (patch) | |
| tree | 96d0b622b0733103d178e07bc0f78f9178efa955 /sys/compat/linux | |
| parent | 225441db6e00440b52872fa1c31994e919c973f6 (diff) | |
- Now that RT-signals fit, fix the array to deliver them. [i386 only].
- jdk-1.4 works perfectly now. :-)
Diffstat (limited to 'sys/compat/linux')
| -rw-r--r-- | sys/compat/linux/arch/alpha/linux_signal.h | 10 | ||||
| -rw-r--r-- | sys/compat/linux/arch/arm/linux_signal.h | 7 | ||||
| -rw-r--r-- | sys/compat/linux/arch/i386/linux_sigarray.c | 132 | ||||
| -rw-r--r-- | sys/compat/linux/arch/i386/linux_signal.h | 7 | ||||
| -rw-r--r-- | sys/compat/linux/arch/m68k/linux_signal.h | 11 | ||||
| -rw-r--r-- | sys/compat/linux/arch/mips/linux_signal.h | 4 | ||||
| -rw-r--r-- | sys/compat/linux/arch/powerpc/linux_signal.h | 6 | ||||
| -rw-r--r-- | sys/compat/linux/common/linux_signal.c | 110 |
8 files changed, 171 insertions, 116 deletions
diff --git a/sys/compat/linux/arch/alpha/linux_signal.h b/sys/compat/linux/arch/alpha/linux_signal.h index 50a67f4698e..62d8762e9b2 100644 --- a/sys/compat/linux/arch/alpha/linux_signal.h +++ b/sys/compat/linux/arch/alpha/linux_signal.h @@ -1,4 +1,4 @@ -/* $NetBSD: linux_signal.h,v 1.2 1998/12/10 00:31:50 erh Exp $ */ +/* $NetBSD: linux_signal.h,v 1.3 2002/03/19 20:51:59 christos Exp $ */ /*- * Copyright (c) 1998 The NetBSD Foundation, Inc. @@ -80,15 +80,15 @@ #define LINUX_SIGPWR LINUX_SIGINFO #define LINUX_SIGPOLL LINUX_SIGIO +/* Min/max real-time linux signal */ +#define LINUX_SIGRTMIN 32 +#define LINUX_SIGRTMAX (LINUX__NSIG - 1) + #define LINUX__NSIG 64 #define LINUX__NSIG_BPW 64 #define LINUX__NSIG_WORDS (LINUX__NSIG / LINUX__NSIG_BPW) #define LINUX_NSIG 32 -/* Min/max real-time linux signal */ -#define LINUX_SIGRTMIN 32 -#define LINUX_SIGRTMAX (LINUX__NSIG - 1) - /* sa_flags */ #define LINUX_SA_ONSTACK 0x00000001 #define LINUX_SA_RESTART 0x00000002 diff --git a/sys/compat/linux/arch/arm/linux_signal.h b/sys/compat/linux/arch/arm/linux_signal.h index 769b8c37046..c9fbee227c9 100644 --- a/sys/compat/linux/arch/arm/linux_signal.h +++ b/sys/compat/linux/arch/arm/linux_signal.h @@ -1,4 +1,4 @@ -/* $NetBSD: linux_signal.h,v 1.2 2002/02/17 22:45:29 bjh21 Exp $ */ +/* $NetBSD: linux_signal.h,v 1.3 2002/03/19 20:51:59 christos Exp $ */ /*- * Copyright (c) 1995, 1998 The NetBSD Foundation, Inc. @@ -70,9 +70,14 @@ #define LINUX_SIGWINCH 28 #define LINUX_SIGIO 29 #define LINUX_SIGPWR 30 +#define LINUX_SIGSYS 31 #define LINUX_SIGUNUSED 31 #define LINUX_NSIG 32 +/* Min/max real-time linux signal */ +#define LINUX_SIGRTMIN 32 +#define LINUX_SIGRTMAX (LINUX__NSIG - 1) + #define LINUX__NSIG 64 #define LINUX__NSIG_BPW 32 #define LINUX__NSIG_WORDS (LINUX__NSIG / LINUX__NSIG_BPW) diff --git a/sys/compat/linux/arch/i386/linux_sigarray.c b/sys/compat/linux/arch/i386/linux_sigarray.c index 40d9ef079ff..e0e8b2f8c43 100644 --- a/sys/compat/linux/arch/i386/linux_sigarray.c +++ b/sys/compat/linux/arch/i386/linux_sigarray.c @@ -1,4 +1,4 @@ -/* $NetBSD: linux_sigarray.c,v 1.19 2001/11/13 02:08:39 lukem Exp $ */ +/* $NetBSD: linux_sigarray.c,v 1.20 2002/03/19 20:51:59 christos Exp $ */ /*- * Copyright (c) 1995, 1998 The NetBSD Foundation, Inc. @@ -37,7 +37,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: linux_sigarray.c,v 1.19 2001/11/13 02:08:39 lukem Exp $"); +__KERNEL_RCSID(0, "$NetBSD: linux_sigarray.c,v 1.20 2002/03/19 20:51:59 christos Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -47,68 +47,68 @@ __KERNEL_RCSID(0, "$NetBSD: linux_sigarray.c,v 1.19 2001/11/13 02:08:39 lukem Ex #include <compat/linux/common/linux_signal.h> int const linux_to_native_sig[LINUX__NSIG] = { - 0, - SIGHUP, - SIGINT, - SIGQUIT, - SIGILL, - SIGTRAP, - SIGABRT, - SIGBUS, - SIGFPE, - SIGKILL, - SIGUSR1, - SIGSEGV, - SIGUSR2, - SIGPIPE, - SIGALRM, - SIGTERM, - 0, /* SIGSTKFLT */ - SIGCHLD, - SIGCONT, - SIGSTOP, - SIGTSTP, - SIGTTIN, - SIGTTOU, - SIGURG, - SIGXCPU, - SIGXFSZ, - SIGVTALRM, - SIGPROF, - SIGWINCH, - SIGIO, - SIGPWR, - 0, /* SIGUNUSED */ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 0, /* 0 */ + SIGHUP, /* 1 */ + SIGINT, /* 2 */ + SIGQUIT, /* 3 */ + SIGILL, /* 4 */ + SIGTRAP, /* 5 */ + SIGABRT, /* 6 */ + SIGBUS, /* 7 */ + SIGFPE, /* 8 */ + SIGKILL, /* 9 */ + SIGUSR1, /* 10 */ + SIGSEGV, /* 11 */ + SIGUSR2, /* 12 */ + SIGPIPE, /* 13 */ + SIGALRM, /* 14 */ + SIGTERM, /* 15 */ + 0, /* 16 SIGSTKFLT */ + SIGCHLD, /* 17 */ + SIGCONT, /* 18 */ + SIGSTOP, /* 19 */ + SIGTSTP, /* 20 */ + SIGTTIN, /* 21 */ + SIGTTOU, /* 22 */ + SIGURG, /* 23 */ + SIGXCPU, /* 24 */ + SIGXFSZ, /* 25 */ + SIGVTALRM, /* 26 */ + SIGPROF, /* 27 */ + SIGWINCH, /* 28 */ + SIGIO, /* 29 */ + SIGPWR, /* 30 */ + SIGSYS, /* 31 */ + SIGRTMIN + 0, /* 32 */ + SIGRTMIN + 1, /* 33 */ + SIGRTMIN + 2, /* 34 */ + SIGRTMIN + 3, /* 35 */ + SIGRTMIN + 4, /* 36 */ + SIGRTMIN + 5, /* 37 */ + SIGRTMIN + 6, /* 38 */ + SIGRTMIN + 7, /* 39 */ + SIGRTMIN + 8, /* 40 */ + SIGRTMIN + 9, /* 41 */ + SIGRTMIN + 10, /* 42 */ + SIGRTMIN + 11, /* 43 */ + SIGRTMIN + 12, /* 44 */ + SIGRTMIN + 13, /* 45 */ + SIGRTMIN + 14, /* 46 */ + SIGRTMIN + 15, /* 47 */ + SIGRTMIN + 16, /* 48 */ + SIGRTMIN + 17, /* 49 */ + SIGRTMIN + 18, /* 50 */ + SIGRTMIN + 19, /* 51 */ + SIGRTMIN + 20, /* 52 */ + SIGRTMIN + 21, /* 53 */ + SIGRTMIN + 22, /* 54 */ + SIGRTMIN + 23, /* 55 */ + SIGRTMIN + 24, /* 56 */ + SIGRTMIN + 25, /* 57 */ + SIGRTMIN + 26, /* 58 */ + SIGRTMIN + 27, /* 59 */ + SIGRTMIN + 28, /* 60 */ + SIGRTMIN + 29, /* 61 */ + SIGRTMIN + 30, /* 62 */ + 0 /* 63 */ }; diff --git a/sys/compat/linux/arch/i386/linux_signal.h b/sys/compat/linux/arch/i386/linux_signal.h index 897876adbd3..2dd0a521bd0 100644 --- a/sys/compat/linux/arch/i386/linux_signal.h +++ b/sys/compat/linux/arch/i386/linux_signal.h @@ -1,4 +1,4 @@ -/* $NetBSD: linux_signal.h,v 1.10 2002/02/15 16:48:00 christos Exp $ */ +/* $NetBSD: linux_signal.h,v 1.11 2002/03/19 20:51:59 christos Exp $ */ /*- * Copyright (c) 1995, 1998 The NetBSD Foundation, Inc. @@ -70,9 +70,14 @@ #define LINUX_SIGWINCH 28 #define LINUX_SIGIO 29 #define LINUX_SIGPWR 30 +#define LINUX_SIGSYS 31 #define LINUX_SIGUNUSED 31 #define LINUX_NSIG 32 +/* Min/max real-time linux signal */ +#define LINUX_SIGRTMIN 32 +#define LINUX_SIGRTMAX (LINUX__NSIG - 1) + #define LINUX__NSIG 64 #define LINUX__NSIG_BPW 32 #define LINUX__NSIG_WORDS (LINUX__NSIG / LINUX__NSIG_BPW) diff --git a/sys/compat/linux/arch/m68k/linux_signal.h b/sys/compat/linux/arch/m68k/linux_signal.h index 4db24de3bab..c015e34283f 100644 --- a/sys/compat/linux/arch/m68k/linux_signal.h +++ b/sys/compat/linux/arch/m68k/linux_signal.h @@ -1,4 +1,4 @@ -/* $NetBSD: linux_signal.h,v 1.1 1998/12/15 19:25:41 itohy Exp $ */ +/* $NetBSD: linux_signal.h,v 1.2 2002/03/19 20:51:59 christos Exp $ */ /*- * Copyright (c) 1998 The NetBSD Foundation, Inc. @@ -75,19 +75,20 @@ #define LINUX_SIGIO 29 #define LINUX_SIGPWR 30 #define LINUX_SIGUNUSED 31 +#define LINUX_SIGSYS 31 #define LINUX_SIGIOT LINUX_SIGABRT #define LINUX_SIGPOLL LINUX_SIGIO +/* Min/max real-time linux signal */ +#define LINUX_SIGRTMIN 32 +#define LINUX_SIGRTMAX (LINUX__NSIG-1) + #define LINUX__NSIG 64 #define LINUX__NSIG_BPW 32 #define LINUX__NSIG_WORDS (LINUX__NSIG / LINUX__NSIG_BPW) #define LINUX_NSIG 32 -/* Min/max real-time linux signal */ -#define LINUX_SIGRTMIN 32 -#define LINUX_SIGRTMAX (LINUX__NSIG-1) - /* sa_flags */ #define LINUX_SA_NOCLDSTOP 0x00000001 #define LINUX_SA_NOCLDWAIT 0x00000002 diff --git a/sys/compat/linux/arch/mips/linux_signal.h b/sys/compat/linux/arch/mips/linux_signal.h index 58ed88be846..166d3dd1f56 100644 --- a/sys/compat/linux/arch/mips/linux_signal.h +++ b/sys/compat/linux/arch/mips/linux_signal.h @@ -1,4 +1,4 @@ -/* $NetBSD: linux_signal.h,v 1.6 2002/02/19 14:11:49 rafal Exp $ */ +/* $NetBSD: linux_signal.h,v 1.7 2002/03/19 20:52:00 christos Exp $ */ /*- * Copyright (c) 1995, 1998, 2001 The NetBSD Foundation, Inc. @@ -91,7 +91,9 @@ struct linux_pt_regs { #define LINUX_SIGXCPU 30 #define LINUX_SIGXFSZ 31 +/* Min/max real-time linux signal */ #define LINUX_SIGRTMIN 32 +#define LINUX_SIGRTMAX (LINUX__NSIG - 1) #define LINUX__NSIG 128 #if defined(ELFSIZE) && (ELFSIZE == 64) diff --git a/sys/compat/linux/arch/powerpc/linux_signal.h b/sys/compat/linux/arch/powerpc/linux_signal.h index 989b0830a2d..171cc329b3b 100644 --- a/sys/compat/linux/arch/powerpc/linux_signal.h +++ b/sys/compat/linux/arch/powerpc/linux_signal.h @@ -1,4 +1,4 @@ -/* $NetBSD: linux_signal.h,v 1.3 2002/02/19 16:35:59 nathanw Exp $ */ +/* $NetBSD: linux_signal.h,v 1.4 2002/03/19 20:52:00 christos Exp $ */ /*- * Copyright (c) 1995, 1998, 2001 The NetBSD Foundation, Inc. @@ -79,6 +79,10 @@ #define LINUX_SIGUNUSED 31 #define LINUX_SIGRTMIN 32 +/* Min/max real-time linux signal */ +#define LINUX_SIGRTMIN 32 +#define LINUX_SIGRTMAX (LINUX__NSIG - 1) + #define LINUX__NSIG 64 #define LINUX__NSIG_BPW 32 #define LINUX__NSIG_WORDS (LINUX__NSIG / LINUX__NSIG_BPW) diff --git a/sys/compat/linux/common/linux_signal.c b/sys/compat/linux/common/linux_signal.c index b03e09aa1fc..c6c561c1aeb 100644 --- a/sys/compat/linux/common/linux_signal.c +++ b/sys/compat/linux/common/linux_signal.c @@ -1,4 +1,4 @@ -/* $NetBSD: linux_signal.c,v 1.34 2002/02/18 22:24:18 christos Exp $ */ +/* $NetBSD: linux_signal.c,v 1.35 2002/03/19 20:52:00 christos Exp $ */ /*- * Copyright (c) 1995, 1998 The NetBSD Foundation, Inc. * All rights reserved. @@ -54,7 +54,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: linux_signal.c,v 1.34 2002/02/18 22:24:18 christos Exp $"); +__KERNEL_RCSID(0, "$NetBSD: linux_signal.c,v 1.35 2002/03/19 20:52:00 christos Exp $"); #define COMPAT_LINUX 1 @@ -86,41 +86,79 @@ __KERNEL_RCSID(0, "$NetBSD: linux_signal.c,v 1.34 2002/02/18 22:24:18 christos E #define linux_sigaddset(s, n) ((s)->sig[((n) - 1) / LINUX__NSIG_BPW] \ |= (1 << ((n) - 1) % LINUX__NSIG_BPW)) +#ifndef LINUX_SIGINFO +#define LINUX_SIGINFO 0 +#endif +#ifndef LINUX_SIGEMT +#define LINUX_SIGEMT 0 +#endif /* Note: linux_to_native_sig[] is in <arch>/linux_sigarray.c */ -const int native_to_linux_sig[NSIG] = { - 0, - LINUX_SIGHUP, - LINUX_SIGINT, - LINUX_SIGQUIT, - LINUX_SIGILL, - LINUX_SIGTRAP, - LINUX_SIGABRT, - 0, /* SIGEMT */ - LINUX_SIGFPE, - LINUX_SIGKILL, - LINUX_SIGBUS, - LINUX_SIGSEGV, - 0, /* SIGSYS */ - LINUX_SIGPIPE, - LINUX_SIGALRM, - LINUX_SIGTERM, - LINUX_SIGURG, - LINUX_SIGSTOP, - LINUX_SIGTSTP, - LINUX_SIGCONT, - LINUX_SIGCHLD, - LINUX_SIGTTIN, - LINUX_SIGTTOU, - LINUX_SIGIO, - LINUX_SIGXCPU, - LINUX_SIGXFSZ, - LINUX_SIGVTALRM, - LINUX_SIGPROF, - LINUX_SIGWINCH, - 0, /* SIGINFO */ - LINUX_SIGUSR1, - LINUX_SIGUSR2, - LINUX_SIGPWR, +const int native_to_linux_sig[] = { + 0, /* 0 */ + LINUX_SIGHUP, /* 1 */ + LINUX_SIGINT, /* 2 */ + LINUX_SIGQUIT, /* 3 */ + LINUX_SIGILL, /* 4 */ + LINUX_SIGTRAP, /* 5 */ + LINUX_SIGABRT, /* 6 */ + LINUX_SIGEMT, /* 7 */ + LINUX_SIGFPE, /* 8 */ + LINUX_SIGKILL, /* 9 */ + LINUX_SIGBUS, /* 10 */ + LINUX_SIGSEGV, /* 11 */ + LINUX_SIGSYS, /* 12 */ + LINUX_SIGPIPE, /* 13 */ + LINUX_SIGALRM, /* 14 */ + LINUX_SIGTERM, /* 15 */ + LINUX_SIGURG, /* 16 */ + LINUX_SIGSTOP, /* 17 */ + LINUX_SIGTSTP, /* 18 */ + LINUX_SIGCONT, /* 19 */ + LINUX_SIGCHLD, /* 20 */ + LINUX_SIGTTIN, /* 21 */ + LINUX_SIGTTOU, /* 22 */ + LINUX_SIGIO, /* 23 */ + LINUX_SIGXCPU, /* 24 */ + LINUX_SIGXFSZ, /* 25 */ + LINUX_SIGVTALRM, /* 26 */ + LINUX_SIGPROF, /* 27 */ + LINUX_SIGWINCH, /* 28 */ + LINUX_SIGINFO, /* 29 */ + LINUX_SIGUSR1, /* 30 */ + LINUX_SIGUSR2, /* 31 */ + LINUX_SIGPWR, /* 32 */ + LINUX_SIGRTMIN + 0, /* 33 */ + LINUX_SIGRTMIN + 1, /* 34 */ + LINUX_SIGRTMIN + 2, /* 35 */ + LINUX_SIGRTMIN + 3, /* 36 */ + LINUX_SIGRTMIN + 4, /* 37 */ + LINUX_SIGRTMIN + 5, /* 38 */ + LINUX_SIGRTMIN + 6, /* 39 */ + LINUX_SIGRTMIN + 7, /* 40 */ + LINUX_SIGRTMIN + 8, /* 41 */ + LINUX_SIGRTMIN + 9, /* 42 */ + LINUX_SIGRTMIN + 10, /* 43 */ + LINUX_SIGRTMIN + 11, /* 44 */ + LINUX_SIGRTMIN + 12, /* 45 */ + LINUX_SIGRTMIN + 13, /* 46 */ + LINUX_SIGRTMIN + 14, /* 47 */ + LINUX_SIGRTMIN + 15, /* 48 */ + LINUX_SIGRTMIN + 16, /* 49 */ + LINUX_SIGRTMIN + 17, /* 50 */ + LINUX_SIGRTMIN + 18, /* 51 */ + LINUX_SIGRTMIN + 19, /* 52 */ + LINUX_SIGRTMIN + 20, /* 53 */ + LINUX_SIGRTMIN + 21, /* 54 */ + LINUX_SIGRTMIN + 22, /* 55 */ + LINUX_SIGRTMIN + 23, /* 56 */ + LINUX_SIGRTMIN + 24, /* 57 */ + LINUX_SIGRTMIN + 25, /* 58 */ + LINUX_SIGRTMIN + 26, /* 59 */ + LINUX_SIGRTMIN + 27, /* 60 */ + LINUX_SIGRTMIN + 28, /* 61 */ + LINUX_SIGRTMIN + 29, /* 62 */ + LINUX_SIGRTMIN + 30, /* 63 */ + }; /* |
