[AVR32] Add TIF_RESTORE_SIGMASK to the work masks

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: <git-commits-head@...>
Date: Friday, December 7, 2007 - 3:59 pm

Gitweb:     http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=702f22...
Commit:     702f22b306c8357b3ef5012b5a8ce062e1d11b4e
Parent:     f194d132e4971111f85c18c96067acffb13cee6d
Author:     Haavard Skinnemoen <hskinnemoen@atmel.com>
AuthorDate: Tue Nov 27 14:10:58 2007 +0100
Committer:  Haavard Skinnemoen <hskinnemoen@atmel.com>
CommitDate: Fri Dec 7 14:52:32 2007 +0100

    [AVR32] Add TIF_RESTORE_SIGMASK to the work masks
    
    We really need to check TIF_RESTORE_SIGMASK before returning to
    userspace. The existing code does not necessarily do this.
    
    Define the work masks as a bitwise OR of the respective flags instead
    of a hardcoded hex value to make it easier to spot errors like this in
    the future.
    
    Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
---
 include/asm-avr32/thread_info.h |   15 +++++++++++----
 1 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/include/asm-avr32/thread_info.h b/include/asm-avr32/thread_info.h
index 17dacf3..67e7aae 100644
--- a/include/asm-avr32/thread_info.h
+++ b/include/asm-avr32/thread_info.h
@@ -95,12 +95,19 @@ static inline struct thread_info *current_thread_info(void)
 #define _TIF_RESTORE_SIGMASK	(1 << TIF_RESTORE_SIGMASK)
 #define _TIF_CPU_GOING_TO_SLEEP (1 << TIF_CPU_GOING_TO_SLEEP)
 
-/* XXX: These two masks must never span more than 16 bits! */
+/* Note: The masks below must never span more than 16 bits! */
+
 /* work to do on interrupt/exception return */
-#define _TIF_WORK_MASK		0x0000013e
+#define _TIF_WORK_MASK				\
+	((1 << TIF_SIGPENDING)			\
+	 | (1 << TIF_NEED_RESCHED)		\
+	 | (1 << TIF_POLLING_NRFLAG)		\
+	 | (1 << TIF_BREAKPOINT)		\
+	 | (1 << TIF_RESTORE_SIGMASK))
+
 /* work to do on any return to userspace */
-#define _TIF_ALLWORK_MASK	0x0000013f
+#define _TIF_ALLWORK_MASK	(_TIF_WORK_MASK | (1 << TIF_SYSCALL_TRACE))
 /* work to do on return from debug mode */
-#define _TIF_DBGWORK_MASK	0x0000017e
+#define _TIF_DBGWORK_MASK	(_TIF_WORK_MASK | (1 << TIF_SINGLE_STEP))
 
 #endif /* __ASM_AVR32_THREAD_INFO_H */
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[AVR32] Add TIF_RESTORE_SIGMASK to the work masks, Linux Kernel Mailing List..., (Fri Dec 7, 3:59 pm)