From 8363c4eb70be6ad091dab5b13a25683763a1eee0 Mon Sep 17 00:00:00 2001 From: Michael Ellerman Date: Fri, 21 Oct 2005 16:01:33 +1000 Subject: [PATCH] --- yaml --- r: 11621 b: refs/heads/master c: 90eac727c6d7afbe707ce408edf97c33385fa08c h: refs/heads/master i: 11619: 9deed36419d625ea2edaaea0a34806ff11c6226e v: v3 --- [refs] | 2 +- trunk/arch/powerpc/kernel/process.c | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 85f1ae941a77..40071da913d5 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 6cb7bfebb145af5ea1d052512a2ae7ff07a47202 +refs/heads/master: 90eac727c6d7afbe707ce408edf97c33385fa08c diff --git a/trunk/arch/powerpc/kernel/process.c b/trunk/arch/powerpc/kernel/process.c index 193c8c1bf132..047da1ae21fe 100644 --- a/trunk/arch/powerpc/kernel/process.c +++ b/trunk/arch/powerpc/kernel/process.c @@ -595,6 +595,10 @@ int copy_thread(int nr, unsigned long clone_flags, unsigned long usp, */ void start_thread(struct pt_regs *regs, unsigned long start, unsigned long sp) { +#ifdef CONFIG_PPC64 + unsigned long load_addr = regs->gpr[2]; /* saved by ELF_PLAT_INIT */ +#endif + set_fs(USER_DS); /* @@ -621,7 +625,7 @@ void start_thread(struct pt_regs *regs, unsigned long start, unsigned long sp) regs->msr = MSR_USER; #else if (!test_thread_flag(TIF_32BIT)) { - unsigned long entry, toc, load_addr = regs->gpr[2]; + unsigned long entry, toc; /* start is a relocated pointer to the function descriptor for * the elf _start routine. The first entry in the function