From 5514f4babeeb3af00ee0c325e3cda7a562cc3d65 Mon Sep 17 00:00:00 2001 From: Ralf Baechle Date: Tue, 8 Aug 2000 18:54:49 +0000 Subject: Merge with Linux 2.4.0-test6-pre4. --- arch/sparc64/kernel/traps.c | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) (limited to 'arch/sparc64/kernel/traps.c') diff --git a/arch/sparc64/kernel/traps.c b/arch/sparc64/kernel/traps.c index 7b5d32614..de4968ac4 100644 --- a/arch/sparc64/kernel/traps.c +++ b/arch/sparc64/kernel/traps.c @@ -1,4 +1,4 @@ -/* $Id: traps.c,v 1.66 2000/05/09 17:40:14 davem Exp $ +/* $Id: traps.c,v 1.67 2000/07/30 23:12:24 davem Exp $ * arch/sparc64/kernel/traps.c * * Copyright (C) 1995,1997 David S. Miller (davem@caip.rutgers.edu) @@ -255,7 +255,6 @@ void bad_trap (struct pt_regs *regs, long lvl) { siginfo_t info; - lock_kernel (); if (lvl < 0x100) { char buffer[24]; @@ -270,17 +269,14 @@ void bad_trap (struct pt_regs *regs, long lvl) info.si_addr = (void *)regs->tpc; info.si_trapno = lvl - 0x100; force_sig_info(SIGILL, &info, current); - unlock_kernel (); } void bad_trap_tl1 (struct pt_regs *regs, long lvl) { char buffer[24]; - lock_kernel(); sprintf (buffer, "Bad trap %lx at tl>0", lvl); die_if_kernel (buffer, regs); - unlock_kernel(); } void instruction_access_exception (struct pt_regs *regs, @@ -288,7 +284,6 @@ void instruction_access_exception (struct pt_regs *regs, { siginfo_t info; - lock_kernel(); if (regs->tstate & TSTATE_PRIV) { #if 1 printk("instruction_access_exception: Shit SFSR[%016lx] SFAR[%016lx], going.\n", @@ -302,7 +297,6 @@ void instruction_access_exception (struct pt_regs *regs, info.si_addr = (void *)regs->tpc; info.si_trapno = 0; force_sig_info(SIGSEGV, &info, current); - unlock_kernel(); } void data_access_exception (struct pt_regs *regs, @@ -343,9 +337,7 @@ void data_access_exception (struct pt_regs *regs, info.si_code = SEGV_MAPERR; info.si_addr = (void *)sfar; info.si_trapno = 0; - lock_kernel(); force_sig_info(SIGSEGV, &info, current); - unlock_kernel(); } #ifdef CONFIG_PCI @@ -389,9 +381,7 @@ void do_iae(struct pt_regs *regs) info.si_code = BUS_OBJERR; info.si_addr = (void *)0; info.si_trapno = 0; - lock_kernel(); force_sig_info(SIGBUS, &info, current); - unlock_kernel(); } void do_dae(struct pt_regs *regs) @@ -692,7 +682,6 @@ void die_if_kernel(char *str, struct pt_regs *regs) smp_report_regs(); #endif - lock_kernel(); /* Or else! */ if(regs->tstate & TSTATE_PRIV) do_exit(SIGKILL); do_exit(SIGSEGV); -- cgit v1.2.3