diff options
author | Franck Bui-Huu <fbuihuu@gmail.com> | 2007-02-05 09:24:26 -0500 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2007-02-10 17:38:47 -0500 |
commit | 6bfe96616062acb75c2460f01acc79236a8ba0e8 (patch) | |
tree | 115425ff5954516259ed2152c8e61f2a5ce527da /arch | |
parent | 9432a9ba96ea8d007341c4e7859d393bfd357c5a (diff) |
[MIPS] signal32: no need to save c0_status register in setup_sigcontext32()
All the information in the MIPS c0_status register is priviledged.
Nothing that would constitute part of the thread context.
The one flag one could possibly argument about might be c0_status.fr
but none of the ABIs or tools or application software can make use
of it.
So for consistency with restore_sigcontext32(), which does not
restore c0_status register, this patch remove the saving part.
Signed-off-by: Franck Bui-Huu <fbuihuu@gmail.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/mips/kernel/asm-offsets.c | 1 | ||||
-rw-r--r-- | arch/mips/kernel/signal32.c | 1 |
2 files changed, 0 insertions, 2 deletions
diff --git a/arch/mips/kernel/asm-offsets.c b/arch/mips/kernel/asm-offsets.c index ea7df4b8da33..c0b089d47181 100644 --- a/arch/mips/kernel/asm-offsets.c +++ b/arch/mips/kernel/asm-offsets.c | |||
@@ -249,7 +249,6 @@ void output_sc_defines(void) | |||
249 | offset("#define SC_MDHI ", struct sigcontext, sc_mdhi); | 249 | offset("#define SC_MDHI ", struct sigcontext, sc_mdhi); |
250 | offset("#define SC_MDLO ", struct sigcontext, sc_mdlo); | 250 | offset("#define SC_MDLO ", struct sigcontext, sc_mdlo); |
251 | offset("#define SC_PC ", struct sigcontext, sc_pc); | 251 | offset("#define SC_PC ", struct sigcontext, sc_pc); |
252 | offset("#define SC_STATUS ", struct sigcontext, sc_status); | ||
253 | offset("#define SC_FPC_CSR ", struct sigcontext, sc_fpc_csr); | 252 | offset("#define SC_FPC_CSR ", struct sigcontext, sc_fpc_csr); |
254 | offset("#define SC_FPC_EIR ", struct sigcontext, sc_fpc_eir); | 253 | offset("#define SC_FPC_EIR ", struct sigcontext, sc_fpc_eir); |
255 | offset("#define SC_HI1 ", struct sigcontext, sc_hi1); | 254 | offset("#define SC_HI1 ", struct sigcontext, sc_hi1); |
diff --git a/arch/mips/kernel/signal32.c b/arch/mips/kernel/signal32.c index 5d102efbdbea..0994d6e1d691 100644 --- a/arch/mips/kernel/signal32.c +++ b/arch/mips/kernel/signal32.c | |||
@@ -170,7 +170,6 @@ static int setup_sigcontext32(struct pt_regs *regs, | |||
170 | int i; | 170 | int i; |
171 | 171 | ||
172 | err |= __put_user(regs->cp0_epc, &sc->sc_pc); | 172 | err |= __put_user(regs->cp0_epc, &sc->sc_pc); |
173 | err |= __put_user(regs->cp0_status, &sc->sc_status); | ||
174 | 173 | ||
175 | err |= __put_user(0, &sc->sc_regs[0]); | 174 | err |= __put_user(0, &sc->sc_regs[0]); |
176 | for (i = 1; i < 32; i++) | 175 | for (i = 1; i < 32; i++) |