Commit 37053cc8 authored by Paul Mundt's avatar Paul Mundt Committed by Linus Torvalds

[PATCH] sh: PREEMPT_ACTIVE fix

Port Paulus's ppc64 fix to sh:

  When the generic IRQ stuff went in, it seems that HARDIRQ_BITS got bumped
  from 9 (for ppc64) up to 12.  Consequently, the PREEMPT_ACTIVE bit is now
  within HARDIRQ_MASK, and I get in_interrupt() falsely returning true when
  PREEMPT_ACTIVE is set, and thus a BUG_ON tripping in arch/ppc64/mm/tlb.c.
Signed-off-by: default avatarPaul Mundt <lethal@linux-sh.org>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent affac4bc
...@@ -27,7 +27,7 @@ struct thread_info { ...@@ -27,7 +27,7 @@ struct thread_info {
#endif #endif
#define PREEMPT_ACTIVE 0x4000000 #define PREEMPT_ACTIVE 0x10000000
/* /*
* macros/functions for gaining access to the thread information structure * macros/functions for gaining access to the thread information structure
......
...@@ -73,7 +73,7 @@ static inline struct thread_info *current_thread_info(void) ...@@ -73,7 +73,7 @@ static inline struct thread_info *current_thread_info(void)
#define THREAD_SIZE 8192 #define THREAD_SIZE 8192
#define PREEMPT_ACTIVE 0x4000000 #define PREEMPT_ACTIVE 0x10000000
/* thread information flags */ /* thread information flags */
#define TIF_SYSCALL_TRACE 0 /* syscall trace active */ #define TIF_SYSCALL_TRACE 0 /* syscall trace active */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment