diff options
author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-09-25 11:54:35 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-09-25 11:54:35 -0400 |
commit | a7f3941a2cecf044f3c2975aee9c2bd423018463 (patch) | |
tree | b13598fc9acdbf2a46a8056ca9a4780af0302048 | |
parent | f3fe81d9c953adc627e26fdd4a9fbfe22cf67ef2 (diff) | |
parent | 474f81967217f3bec2389ae913da72641f2c40e3 (diff) |
Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:
[POWERPC] Ensure FULL_REGS on exec
-rw-r--r-- | arch/powerpc/kernel/process.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/process.c b/arch/powerpc/kernel/process.c index e477c9d0498b..8a1b001d0b11 100644 --- a/arch/powerpc/kernel/process.c +++ b/arch/powerpc/kernel/process.c | |||
@@ -605,6 +605,13 @@ void start_thread(struct pt_regs *regs, unsigned long start, unsigned long sp) | |||
605 | regs->ccr = 0; | 605 | regs->ccr = 0; |
606 | regs->gpr[1] = sp; | 606 | regs->gpr[1] = sp; |
607 | 607 | ||
608 | /* | ||
609 | * We have just cleared all the nonvolatile GPRs, so make | ||
610 | * FULL_REGS(regs) return true. This is necessary to allow | ||
611 | * ptrace to examine the thread immediately after exec. | ||
612 | */ | ||
613 | regs->trap &= ~1UL; | ||
614 | |||
608 | #ifdef CONFIG_PPC32 | 615 | #ifdef CONFIG_PPC32 |
609 | regs->mq = 0; | 616 | regs->mq = 0; |
610 | regs->nip = start; | 617 | regs->nip = start; |