summaryrefslogtreecommitdiffstats
path: root/arch/mips/kernel/signal32.c
Commit message (Collapse)AuthorAgeFilesLines
* [MIPS] Avoid double signal restarting.Ralf Baechle2006-09-271-0/+1
| | | | | | | | | | | | | | | In entry.S resume_userspace ... jal do_notify_resume form a loop through which the kernel will iterate as long as work is pending. If we iterate through this loop more than once with no signal pending for at least one but the last iteration we will take do the syscall restarting multiple times resulting in a syscall return prior to the the syscall instruction in userspace. This may happen when debugging a multithreaded program. Debugging and original fix by Maciej; extended to other ABIs by me. Signed-off-by: Maciej W. Rozycki <macro@mips.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Add missing returns in signal code.Ralf Baechle2006-09-271-0/+2
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Don't call try_to_freeze in do_signal & co.Ralf Baechle2006-09-271-4/+0
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] War on whitespace: cleanup initial spaces followed by tabs.Ralf Baechle2006-03-211-5/+5
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Signal cleanupAtsushi Nemoto2006-03-211-12/+12
| | | | | | | | | Move function prototypes to asm/signal.h to detect trivial errors and add some __user tags to get rid of sparse warnings. Generated code should not be changed. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Reformat all of signal32.c with tabs instead of space for consistencyMartin Michlmayr2006-03-211-6/+6
| | | | | Signed-off-by: Martin Michlmayr <tbm@cyrius.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Reformat _sys32_rt_sigsuspend with tabs instead of space for consistency.Ralf Baechle2006-02-211-1/+1
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Make do_signal32 return void.Martin Michlmayr2006-02-211-5/+3
| | | | | | | | do_signal has been changed to return void since the "return value is ignored everywhere". Convert do_signal32 accordingly. Signed-off-by: Martin Michlmayr <tbm@cyrius.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Add support for TIF_RESTORE_SIGMASK for signal32Martin Michlmayr2006-02-211-27/+41
| | | | | | | | | | Following the recent implementation of TIF_RESTORE_SIGMASK in arch/mips/kernel/signal.c, 64-bit kernels with 32-bit user-land compatibility oops when starting init. signal32.c needs to be converted to use TIF_RESTORE_SIGMASK too. Signed-off-by: Martin Michlmayr <tbm@cyrius.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Fix typo in _sys32_rt_sigreturn and _sysn32_rt_sigreturn.Atsushi Nemoto2006-02-141-1/+1
| | | | | Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Add support for TIF_RESTORE_SIGMASK.Ralf Baechle2006-02-081-4/+4
| | | | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org> ---
* [MIPS] Fix minor sparse warningsAtsushi Nemoto2006-02-071-1/+1
| | | | | Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Sparse: Add some __user tags to signal functions.Atsushi Nemoto2006-02-071-27/+30
| | | | | Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* MIPS: DSP: Put DSPcontrol register into the right place in the signal frame.Ralf Baechle2006-01-101-1/+1
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Avoid duplicate do_syscall_trace calls on return from sigreturn.Ralf Baechle2005-12-011-2/+0
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* Fix return type of setup_frame variantsAtsushi Nemoto2005-11-071-5/+8
| | | | | | | | Since 2.6.13-rc1 setup_frame and its variants return int. But some bits were missed in the conversion. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* Setup_frame is now returning a success value.Ralf Baechle2005-10-291-7/+9
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* Redo RM9000 workaround which along with other DSP ASE changes wasRalf Baechle2005-10-291-0/+16
| | | | | | causing some headache for debuggers knowing about signal frames. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* Support the MIPS32 / MIPS64 DSP ASE.Ralf Baechle2005-10-291-9/+25
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* We pass a kernel pointer to do_sigaltstack in sys32_sigaltstack, soRalf Baechle2005-10-291-0/+4
| | | | | | we need to do the set_fs(KERNEL_DS) thing around this call. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* Use compat_sigval_t in struct compat_siginfo.Ralf Baechle2005-10-291-1/+1
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* Gcc 4.0 fixes.Ralf Baechle2005-10-291-4/+6
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* Update to match the native siginfo structure and code.Ralf Baechle2005-10-291-2/+9
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* Implement 32-bit compatibility for waitid(2).Ralf Baechle2005-10-291-0/+27
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [PATCH] mips: nuke trailing whitespaceRalf Baechle2005-09-051-1/+1
| | | | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] convert signal handling of NODEFER to act like other Unix boxes.Steven Rostedt2005-08-291-6/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It has been reported that the way Linux handles NODEFER for signals is not consistent with the way other Unix boxes handle it. I've written a program to test the behavior of how this flag affects signals and had several reports from people who ran this on various Unix boxes, confirming that Linux seems to be unique on the way this is handled. The way NODEFER affects signals on other Unix boxes is as follows: 1) If NODEFER is set, other signals in sa_mask are still blocked. 2) If NODEFER is set and the signal is in sa_mask, then the signal is still blocked. (Note: this is the behavior of all tested but Linux _and_ NetBSD 2.0 *). The way NODEFER affects signals on Linux: 1) If NODEFER is set, other signals are _not_ blocked regardless of sa_mask (Even NetBSD doesn't do this). 2) If NODEFER is set and the signal is in sa_mask, then the signal being handled is not blocked. The patch converts signal handling in all current Linux architectures to the way most Unix boxes work. Unix boxes that were tested: DU4, AIX 5.2, Irix 6.5, NetBSD 2.0, SFU 3.5 on WinXP, AIX 5.3, Mac OSX, and of course Linux 2.6.13-rcX. * NetBSD was the only other Unix to behave like Linux on point #2. The main concern was brought up by point #1 which even NetBSD isn't like Linux. So with this patch, we leave NetBSD as the lonely one that behaves differently here with #2. Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] try_to_freeze() call fixesNigel Cunningham2005-07-271-1/+1
| | | | | | | | | Here are fixes for four try_to_freeze calls that are still (incorrectly) using a parameter after the recent try_to_freeze() changes. Signed-off-by: Nigel Cunningham <nigel@suspend2.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Linux-2.6.12-rc2v2.6.12-rc2Linus Torvalds2005-04-161-0/+905
Initial git repository build. I'm not bothering with the full history, even though we have it. We can create a separate "historical" git archive of that later if we want to, and in the meantime it's about 3.2GB when imported into git - space that would just make the early git days unnecessarily complicated, when we don't have a lot of good infrastructure for it. Let it rip!