patch-2.4.4 linux/arch/sparc64/kernel/unaligned.c
Next file: linux/arch/sparc64/lib/bitops.S
Previous file: linux/arch/sparc64/kernel/ttable.S
Back to the patch index
Back to the overall index
- Lines: 24
- Date:
Thu Apr 12 12:10:25 2001
- Orig file:
v2.4.3/linux/arch/sparc64/kernel/unaligned.c
- Orig date:
Sun Mar 25 18:14:21 2001
diff -u --recursive --new-file v2.4.3/linux/arch/sparc64/kernel/unaligned.c linux/arch/sparc64/kernel/unaligned.c
@@ -1,4 +1,4 @@
-/* $Id: unaligned.c,v 1.21 2001/03/21 11:46:20 davem Exp $
+/* $Id: unaligned.c,v 1.23 2001/04/09 04:29:03 davem Exp $
* unaligned.c: Unaligned load/store trap handling with special
* cases for the kernel to do them more quickly.
*
@@ -12,6 +12,7 @@
#include <linux/mm.h>
#include <asm/asi.h>
#include <asm/ptrace.h>
+#include <asm/pstate.h>
#include <asm/processor.h>
#include <asm/system.h>
#include <asm/uaccess.h>
@@ -376,6 +377,9 @@
regs->tpc = fixup;
regs->tnpc = regs->tpc + 4;
regs->u_regs [UREG_G2] = g2;
+
+ regs->tstate &= ~TSTATE_ASI;
+ regs->tstate |= (ASI_AIUS << 24UL);
}
asmlinkage void kernel_unaligned_trap(struct pt_regs *regs, unsigned int insn, unsigned long sfar, unsigned long sfsr)
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)