]> git.baikalelectronics.ru Git - kernel.git/commit
[IA64] Synchronize kernel RSE to user-space and back
authorPetr Tesarik <ptesarik@suse.cz>
Wed, 12 Dec 2007 14:23:34 +0000 (15:23 +0100)
committerTony Luck <tony.luck@intel.com>
Fri, 8 Feb 2008 20:01:18 +0000 (12:01 -0800)
commit7e30378e00924d86be40b276dfb1b862e1e208c3
treeacf3913f8c0a479615060ffed4cec9283047761c
parentee0fa3dbf373532de3e4c8c087fa29aa8f64d287
[IA64] Synchronize kernel RSE to user-space and back

This is base kernel patch for ptrace RSE bug. It's basically a backport
from the utrace RSE patch I sent out several weeks ago. please review.

when a thread is stopped (ptraced), debugger might change thread's user
stack (change memory directly), and we must avoid the RSE stored in
kernel to override user stack (user space's RSE is newer than kernel's
in the case). To workaround the issue, we copy kernel RSE to user RSE
before the task is stopped, so user RSE has updated data.  we then copy
user RSE to kernel after the task is resummed from traced stop and
kernel will use the newer RSE to return to user.

Signed-off-by: Shaohua Li <shaohua.li@intel.com>
Signed-off-by: Petr Tesarik <ptesarik@suse.cz>
CC: Roland McGrath <roland@redhat.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
arch/ia64/kernel/process.c
arch/ia64/kernel/ptrace.c
include/asm-ia64/ptrace.h
include/asm-ia64/thread_info.h