diff options
| author | Ralf Baechle <ralf@linux-mips.org> | 2009-09-16 20:25:05 -0400 |
|---|---|---|
| committer | Ralf Baechle <ralf@linux-mips.org> | 2009-09-17 14:07:49 -0400 |
| commit | 43e6ae6d9f08304682294c14c6b7f2b2441668e7 (patch) | |
| tree | 0232f2aab68e6c2d7806878026b87bf5e6ea5df4 | |
| parent | f1e39a4a616cd9981a9decfd5332fd07a01abb8b (diff) | |
MIPS: Rewrite clearing of ll_bit on context switch in C
This also means there is now only one implementation not 3 left.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| -rw-r--r-- | arch/mips/include/asm/system.h | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/arch/mips/include/asm/system.h b/arch/mips/include/asm/system.h index 23f68b40d4bb..cc7262ff0765 100644 --- a/arch/mips/include/asm/system.h +++ b/arch/mips/include/asm/system.h | |||
| @@ -66,16 +66,11 @@ do { \ | |||
| 66 | #define __mips_mt_fpaff_switch_to(prev) do { (void) (prev); } while (0) | 66 | #define __mips_mt_fpaff_switch_to(prev) do { (void) (prev); } while (0) |
| 67 | #endif | 67 | #endif |
| 68 | 68 | ||
| 69 | #ifdef CONFIG_CPU_HAS_LLSC | ||
| 70 | #define __clear_software_ll_bit() do { } while (0) | ||
| 71 | #else | ||
| 72 | extern unsigned long ll_bit; | ||
| 73 | |||
| 74 | #define __clear_software_ll_bit() \ | 69 | #define __clear_software_ll_bit() \ |
| 75 | do { \ | 70 | do { \ |
| 76 | ll_bit = 0; \ | 71 | if (!__builtin_constant_p(cpu_has_llsc) || !cpu_has_llsc) \ |
| 72 | ll_bit = 0; \ | ||
| 77 | } while (0) | 73 | } while (0) |
| 78 | #endif | ||
| 79 | 74 | ||
| 80 | #define switch_to(prev, next, last) \ | 75 | #define switch_to(prev, next, last) \ |
| 81 | do { \ | 76 | do { \ |
