diff options
author | Stas Sergeev <stsp@aknet.ru> | 2006-01-01 02:18:52 +0100 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-01 03:01:57 +0100 |
commit | 557962a926c62a9c4bd79d6b36df873d4f8c51ef (patch) | |
tree | f0056d09f2a2fc3bb2ea427aa189351b07400a52 /arch/i386/kernel/process.c | |
parent | sysctl: make sure to terminate strings with a NUL (diff) | |
download | linux-557962a926c62a9c4bd79d6b36df873d4f8c51ef.tar.xz linux-557962a926c62a9c4bd79d6b36df873d4f8c51ef.zip |
[PATCH] x86: teach dump_task_regs() about the -8 offset.
This should fix multi-threaded core-files
Signed-off-by: stsp@aknet.ru
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to '')
-rw-r--r-- | arch/i386/kernel/process.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/i386/kernel/process.c b/arch/i386/kernel/process.c index df6c2bcde067..2333aead0563 100644 --- a/arch/i386/kernel/process.c +++ b/arch/i386/kernel/process.c @@ -554,7 +554,9 @@ int dump_task_regs(struct task_struct *tsk, elf_gregset_t *regs) struct pt_regs ptregs; ptregs = *(struct pt_regs *) - ((unsigned long)tsk->thread_info+THREAD_SIZE - sizeof(ptregs)); + ((unsigned long)tsk->thread_info + + /* see comments in copy_thread() about -8 */ + THREAD_SIZE - sizeof(ptregs) - 8); ptregs.xcs &= 0xffff; ptregs.xds &= 0xffff; ptregs.xes &= 0xffff; |