diff options
author | Ralf Baechle <ralf@linux-mips.org> | 1999-06-13 16:29:25 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 1999-06-13 16:29:25 +0000 |
commit | db7d4daea91e105e3859cf461d7e53b9b77454b2 (patch) | |
tree | 9bb65b95440af09e8aca63abe56970dd3360cc57 /arch/sparc64/mm/ultra.S | |
parent | 9c1c01ead627bdda9211c9abd5b758d6c687d8ac (diff) |
Merge with Linux 2.2.8.
Diffstat (limited to 'arch/sparc64/mm/ultra.S')
-rw-r--r-- | arch/sparc64/mm/ultra.S | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/arch/sparc64/mm/ultra.S b/arch/sparc64/mm/ultra.S index 4362a15b4..3d3d1a289 100644 --- a/arch/sparc64/mm/ultra.S +++ b/arch/sparc64/mm/ultra.S @@ -1,4 +1,4 @@ -/* $Id: ultra.S,v 1.31 1998/11/07 06:39:21 davem Exp $ +/* $Id: ultra.S,v 1.32 1999/03/28 08:39:34 davem Exp $ * ultra.S: Don't expand these all over the place... * * Copyright (C) 1997 David S. Miller (davem@caip.rutgers.edu) @@ -261,6 +261,21 @@ xcall_capture: b,pt %xcc, rtrap clr %l6 + .globl xcall_receive_signal +xcall_receive_signal: + rdpr %pstate, %g2 + wrpr %g2, PSTATE_IG | PSTATE_AG, %pstate + rdpr %tstate, %g1 + andcc %g1, TSTATE_PRIV, %g0 + /* If we did not trap from user space, just ignore. */ + bne,pn %xcc, 99f + sethi %hi(109f), %g7 + b,pt %xcc, etrap +109: or %g7, %lo(109b), %g7 + b,pt %xcc, rtrap + clr %l6 +99: retry + /* These two are not performance critical... */ .globl xcall_flush_tlb_all xcall_flush_tlb_all: |