aboutsummaryrefslogtreecommitdiffstats
path: root/arch/ppc/kernel
diff options
context:
space:
mode:
authorRoland McGrath <roland@redhat.com>2008-04-28 03:30:37 -0400
committerPaul Mackerras <paulus@samba.org>2008-05-14 08:31:33 -0400
commit7a10174eeafe737f3ccfcece5bdff749c3b044e0 (patch)
tree96d3139ed19153e3369683d6b71cd74852fd1ef5 /arch/ppc/kernel
parent140b932f8cb6cced10b96860651a198b1b89cbb9 (diff)
[POWERPC] Define and use TLF_RESTORE_SIGMASK
Replace TIF_RESTORE_SIGMASK with TLF_RESTORE_SIGMASK and define our own set_restore_sigmask() function. This saves the costly SMP-safe set_bit operation, which we do not need for the sigmask flag since TIF_SIGPENDING always has to be set too. Signed-off-by: Roland McGrath <roland@redhat.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/ppc/kernel')
-rw-r--r--arch/ppc/kernel/entry.S4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/ppc/kernel/entry.S b/arch/ppc/kernel/entry.S
index 5f3a5d068a5c..fcd830a292e2 100644
--- a/arch/ppc/kernel/entry.S
+++ b/arch/ppc/kernel/entry.S
@@ -647,7 +647,7 @@ user_exc_return: /* r10 contains MSR_KERNEL here */
647 /* Check current_thread_info()->flags */ 647 /* Check current_thread_info()->flags */
648 rlwinm r9,r1,0,0,18 648 rlwinm r9,r1,0,0,18
649 lwz r9,TI_FLAGS(r9) 649 lwz r9,TI_FLAGS(r9)
650 andi. r0,r9,(_TIF_SIGPENDING|_TIF_RESTORE_SIGMASK|_TIF_NEED_RESCHED) 650 andi. r0,r9,_TIF_USER_WORK_MASK
651 bne do_work 651 bne do_work
652 652
653restore_user: 653restore_user:
@@ -898,7 +898,7 @@ recheck:
898 lwz r9,TI_FLAGS(r9) 898 lwz r9,TI_FLAGS(r9)
899 andi. r0,r9,_TIF_NEED_RESCHED 899 andi. r0,r9,_TIF_NEED_RESCHED
900 bne- do_resched 900 bne- do_resched
901 andi. r0,r9,_TIF_SIGPENDING 901 andi. r0,r9,_TIF_USER_WORK_MASK
902 beq restore_user 902 beq restore_user
903do_user_signal: /* r10 contains MSR_KERNEL here */ 903do_user_signal: /* r10 contains MSR_KERNEL here */
904 ori r10,r10,MSR_EE 904 ori r10,r10,MSR_EE