From: Al Viro Signed-off-by: Al Viro Signed-off-by: Andrew Morton --- arch/sparc64/kernel/process.c | 4 +-- arch/sparc64/kernel/ptrace.c | 34 ++++++++++++++-------------- arch/sparc64/kernel/setup.c | 2 - arch/sparc64/kernel/smp.c | 2 - include/asm-sparc64/mmu_context.h | 2 - include/asm-sparc64/system.h | 4 +-- 6 files changed, 24 insertions(+), 24 deletions(-) diff -puN arch/sparc64/kernel/process.c~sparc64-task_thread_info arch/sparc64/kernel/process.c --- devel/arch/sparc64/kernel/process.c~sparc64-task_thread_info 2006-01-04 22:01:56.000000000 -0800 +++ devel-akpm/arch/sparc64/kernel/process.c 2006-01-04 22:01:56.000000000 -0800 @@ -390,7 +390,7 @@ void show_regs32(struct pt_regs32 *regs) unsigned long thread_saved_pc(struct task_struct *tsk) { - struct thread_info *ti = tsk->thread_info; + struct thread_info *ti = task_thread_info(tsk); unsigned long ret = 0xdeadbeefUL; if (ti && ti->ksp) { @@ -847,7 +847,7 @@ unsigned long get_wchan(struct task_stru thread_info_base = (unsigned long) task->thread_info; bias = STACK_BIAS; - fp = task->thread_info->ksp + bias; + fp = task_thread_info(task)->ksp + bias; do { /* Bogus frame pointer? */ diff -puN arch/sparc64/kernel/ptrace.c~sparc64-task_thread_info arch/sparc64/kernel/ptrace.c --- devel/arch/sparc64/kernel/ptrace.c~sparc64-task_thread_info 2006-01-04 22:01:56.000000000 -0800 +++ devel-akpm/arch/sparc64/kernel/ptrace.c 2006-01-04 22:01:56.000000000 -0800 @@ -324,7 +324,7 @@ asmlinkage void do_ptrace(struct pt_regs unsigned long tpc = cregs->tpc; int rval; - if ((child->thread_info->flags & _TIF_32BIT) != 0) + if ((task_thread_info(child)->flags & _TIF_32BIT) != 0) tpc &= 0xffffffff; if (__put_user(cregs->tstate, (&pregs->tstate)) || __put_user(tpc, (&pregs->tpc)) || @@ -395,7 +395,7 @@ asmlinkage void do_ptrace(struct pt_regs pt_error_return(regs, EFAULT); goto out_tsk; } - if ((child->thread_info->flags & _TIF_32BIT) != 0) { + if ((task_thread_info(child)->flags & _TIF_32BIT) != 0) { tpc &= 0xffffffff; tnpc &= 0xffffffff; } @@ -430,11 +430,11 @@ asmlinkage void do_ptrace(struct pt_regs } fpq[16]; }; struct fps __user *fps = (struct fps __user *) addr; - unsigned long *fpregs = child->thread_info->fpregs; + unsigned long *fpregs = task_thread_info(child)->fpregs; if (copy_to_user(&fps->regs[0], fpregs, (32 * sizeof(unsigned int))) || - __put_user(child->thread_info->xfsr[0], (&fps->fsr)) || + __put_user(task_thread_info(child)->xfsr[0], (&fps->fsr)) || __put_user(0, (&fps->fpqd)) || __put_user(0, (&fps->flags)) || __put_user(0, (&fps->extra)) || @@ -452,11 +452,11 @@ asmlinkage void do_ptrace(struct pt_regs unsigned long fsr; }; struct fps __user *fps = (struct fps __user *) addr; - unsigned long *fpregs = child->thread_info->fpregs; + unsigned long *fpregs = task_thread_info(child)->fpregs; if (copy_to_user(&fps->regs[0], fpregs, (64 * sizeof(unsigned int))) || - __put_user(child->thread_info->xfsr[0], (&fps->fsr))) { + __put_user(task_thread_info(child)->xfsr[0], (&fps->fsr))) { pt_error_return(regs, EFAULT); goto out_tsk; } @@ -477,7 +477,7 @@ asmlinkage void do_ptrace(struct pt_regs } fpq[16]; }; struct fps __user *fps = (struct fps __user *) addr; - unsigned long *fpregs = child->thread_info->fpregs; + unsigned long *fpregs = task_thread_info(child)->fpregs; unsigned fsr; if (copy_from_user(fpregs, &fps->regs[0], @@ -486,11 +486,11 @@ asmlinkage void do_ptrace(struct pt_regs pt_error_return(regs, EFAULT); goto out_tsk; } - child->thread_info->xfsr[0] &= 0xffffffff00000000UL; - child->thread_info->xfsr[0] |= fsr; - if (!(child->thread_info->fpsaved[0] & FPRS_FEF)) - child->thread_info->gsr[0] = 0; - child->thread_info->fpsaved[0] |= (FPRS_FEF | FPRS_DL); + task_thread_info(child)->xfsr[0] &= 0xffffffff00000000UL; + task_thread_info(child)->xfsr[0] |= fsr; + if (!(task_thread_info(child)->fpsaved[0] & FPRS_FEF)) + task_thread_info(child)->gsr[0] = 0; + task_thread_info(child)->fpsaved[0] |= (FPRS_FEF | FPRS_DL); pt_succ_return(regs, 0); goto out_tsk; } @@ -501,17 +501,17 @@ asmlinkage void do_ptrace(struct pt_regs unsigned long fsr; }; struct fps __user *fps = (struct fps __user *) addr; - unsigned long *fpregs = child->thread_info->fpregs; + unsigned long *fpregs = task_thread_info(child)->fpregs; if (copy_from_user(fpregs, &fps->regs[0], (64 * sizeof(unsigned int))) || - __get_user(child->thread_info->xfsr[0], (&fps->fsr))) { + __get_user(task_thread_info(child)->xfsr[0], (&fps->fsr))) { pt_error_return(regs, EFAULT); goto out_tsk; } - if (!(child->thread_info->fpsaved[0] & FPRS_FEF)) - child->thread_info->gsr[0] = 0; - child->thread_info->fpsaved[0] |= (FPRS_FEF | FPRS_DL | FPRS_DU); + if (!(task_thread_info(child)->fpsaved[0] & FPRS_FEF)) + task_thread_info(child)->gsr[0] = 0; + task_thread_info(child)->fpsaved[0] |= (FPRS_FEF | FPRS_DL | FPRS_DU); pt_succ_return(regs, 0); goto out_tsk; } diff -puN arch/sparc64/kernel/setup.c~sparc64-task_thread_info arch/sparc64/kernel/setup.c --- devel/arch/sparc64/kernel/setup.c~sparc64-task_thread_info 2006-01-04 22:01:56.000000000 -0800 +++ devel-akpm/arch/sparc64/kernel/setup.c 2006-01-04 22:01:56.000000000 -0800 @@ -520,7 +520,7 @@ void __init setup_arch(char **cmdline_p) rd_doload = ((ram_flags & RAMDISK_LOAD_FLAG) != 0); #endif - init_task.thread_info->kregs = &fake_swapper_regs; + task_thread_info(&init_task)->kregs = &fake_swapper_regs; #ifdef CONFIG_IP_PNP if (!ic_set_manually) { diff -puN arch/sparc64/kernel/smp.c~sparc64-task_thread_info arch/sparc64/kernel/smp.c --- devel/arch/sparc64/kernel/smp.c~sparc64-task_thread_info 2006-01-04 22:01:56.000000000 -0800 +++ devel-akpm/arch/sparc64/kernel/smp.c 2006-01-04 22:01:56.000000000 -0800 @@ -335,7 +335,7 @@ static int __devinit smp_boot_one_cpu(un p = fork_idle(cpu); callin_flag = 0; - cpu_new_thread = p->thread_info; + cpu_new_thread = task_thread_info(p); cpu_set(cpu, cpu_callout_map); cpu_find_by_mid(cpu, &cpu_node); diff -puN include/asm-sparc64/mmu_context.h~sparc64-task_thread_info include/asm-sparc64/mmu_context.h --- devel/include/asm-sparc64/mmu_context.h~sparc64-task_thread_info 2006-01-04 22:01:56.000000000 -0800 +++ devel-akpm/include/asm-sparc64/mmu_context.h 2006-01-04 22:01:56.000000000 -0800 @@ -60,7 +60,7 @@ do { \ register unsigned long pgd_cache asm("o4"); \ paddr = __pa((__mm)->pgd); \ pgd_cache = 0UL; \ - if ((__tsk)->thread_info->flags & _TIF_32BIT) \ + if (task_thread_info(__tsk)->flags & _TIF_32BIT) \ pgd_cache = get_pgd_cache((__mm)->pgd); \ __asm__ __volatile__("wrpr %%g0, 0x494, %%pstate\n\t" \ "mov %3, %%g4\n\t" \ diff -puN include/asm-sparc64/system.h~sparc64-task_thread_info include/asm-sparc64/system.h --- devel/include/asm-sparc64/system.h~sparc64-task_thread_info 2006-01-04 22:01:56.000000000 -0800 +++ devel-akpm/include/asm-sparc64/system.h 2006-01-04 22:01:56.000000000 -0800 @@ -208,7 +208,7 @@ do { if (test_thread_flag(TIF_PERFCTR)) /* If you are tempted to conditionalize the following */ \ /* so that ASI is only written if it changes, think again. */ \ __asm__ __volatile__("wr %%g0, %0, %%asi" \ - : : "r" (__thread_flag_byte_ptr(next->thread_info)[TI_FLAG_BYTE_CURRENT_DS]));\ + : : "r" (__thread_flag_byte_ptr(task_thread_info(next))[TI_FLAG_BYTE_CURRENT_DS]));\ __asm__ __volatile__( \ "mov %%g4, %%g7\n\t" \ "wrpr %%g0, 0x95, %%pstate\n\t" \ @@ -238,7 +238,7 @@ do { if (test_thread_flag(TIF_PERFCTR)) "b,a ret_from_syscall\n\t" \ "1:\n\t" \ : "=&r" (last) \ - : "0" (next->thread_info), \ + : "0" (task_thread_info(next)), \ "i" (TI_WSTATE), "i" (TI_KSP), "i" (TI_NEW_CHILD), \ "i" (TI_CWP), "i" (TI_TASK) \ : "cc", \ _