diff options
Diffstat (limited to 'arch/powerpc/kernel/process.c')
| -rw-r--r-- | arch/powerpc/kernel/process.c | 20 |
1 files changed, 9 insertions, 11 deletions
diff --git a/arch/powerpc/kernel/process.c b/arch/powerpc/kernel/process.c index 91356ffda2ca..b1c648a36b03 100644 --- a/arch/powerpc/kernel/process.c +++ b/arch/powerpc/kernel/process.c | |||
| @@ -728,7 +728,7 @@ int copy_thread(unsigned long clone_flags, unsigned long usp, | |||
| 728 | p->thread.regs = childregs; | 728 | p->thread.regs = childregs; |
| 729 | if (clone_flags & CLONE_SETTLS) { | 729 | if (clone_flags & CLONE_SETTLS) { |
| 730 | #ifdef CONFIG_PPC64 | 730 | #ifdef CONFIG_PPC64 |
| 731 | if (!test_thread_flag(TIF_32BIT)) | 731 | if (!is_32bit_task()) |
| 732 | childregs->gpr[13] = childregs->gpr[6]; | 732 | childregs->gpr[13] = childregs->gpr[6]; |
| 733 | else | 733 | else |
| 734 | #endif | 734 | #endif |
| @@ -823,7 +823,7 @@ void start_thread(struct pt_regs *regs, unsigned long start, unsigned long sp) | |||
| 823 | regs->nip = start; | 823 | regs->nip = start; |
| 824 | regs->msr = MSR_USER; | 824 | regs->msr = MSR_USER; |
| 825 | #else | 825 | #else |
| 826 | if (!test_thread_flag(TIF_32BIT)) { | 826 | if (!is_32bit_task()) { |
| 827 | unsigned long entry, toc; | 827 | unsigned long entry, toc; |
| 828 | 828 | ||
| 829 | /* start is a relocated pointer to the function descriptor for | 829 | /* start is a relocated pointer to the function descriptor for |
| @@ -995,7 +995,7 @@ int sys_clone(unsigned long clone_flags, unsigned long usp, | |||
| 995 | if (usp == 0) | 995 | if (usp == 0) |
| 996 | usp = regs->gpr[1]; /* stack pointer for child */ | 996 | usp = regs->gpr[1]; /* stack pointer for child */ |
| 997 | #ifdef CONFIG_PPC64 | 997 | #ifdef CONFIG_PPC64 |
| 998 | if (test_thread_flag(TIF_32BIT)) { | 998 | if (is_32bit_task()) { |
| 999 | parent_tidp = TRUNC_PTR(parent_tidp); | 999 | parent_tidp = TRUNC_PTR(parent_tidp); |
| 1000 | child_tidp = TRUNC_PTR(child_tidp); | 1000 | child_tidp = TRUNC_PTR(child_tidp); |
| 1001 | } | 1001 | } |
| @@ -1199,19 +1199,17 @@ void ppc64_runlatch_on(void) | |||
| 1199 | } | 1199 | } |
| 1200 | } | 1200 | } |
| 1201 | 1201 | ||
| 1202 | void ppc64_runlatch_off(void) | 1202 | void __ppc64_runlatch_off(void) |
| 1203 | { | 1203 | { |
| 1204 | unsigned long ctrl; | 1204 | unsigned long ctrl; |
| 1205 | 1205 | ||
| 1206 | if (cpu_has_feature(CPU_FTR_CTRL) && test_thread_flag(TIF_RUNLATCH)) { | 1206 | HMT_medium(); |
| 1207 | HMT_medium(); | ||
| 1208 | 1207 | ||
| 1209 | clear_thread_flag(TIF_RUNLATCH); | 1208 | clear_thread_flag(TIF_RUNLATCH); |
| 1210 | 1209 | ||
| 1211 | ctrl = mfspr(SPRN_CTRLF); | 1210 | ctrl = mfspr(SPRN_CTRLF); |
| 1212 | ctrl &= ~CTRL_RUNLATCH; | 1211 | ctrl &= ~CTRL_RUNLATCH; |
| 1213 | mtspr(SPRN_CTRLT, ctrl); | 1212 | mtspr(SPRN_CTRLT, ctrl); |
| 1214 | } | ||
| 1215 | } | 1213 | } |
| 1216 | #endif | 1214 | #endif |
| 1217 | 1215 | ||
