summaryrefslogtreecommitdiff
path: root/arch/ia64/kernel/ptrace.c
diff options
context:
space:
mode:
authorAkiyama, Nobuyuki <akiyama.nobuyuk@jp.fujitsu.com>2007-02-22 22:50:38 +0900
committerTony Luck <tony.luck@intel.com>2007-03-08 10:27:24 -0800
commit8e43d75ad0bd8a90933abb005ef57caf63ce8541 (patch)
tree49a0da773d7f4db3ea40d015a5217ce5b1355326 /arch/ia64/kernel/ptrace.c
parent0ac1faca4a63fc2f7e608be76127561b88fbcdd9 (diff)
downloadlwn-8e43d75ad0bd8a90933abb005ef57caf63ce8541.tar.gz
lwn-8e43d75ad0bd8a90933abb005ef57caf63ce8541.zip
[IA64] add missing syscall trace clear
The ptrace misses clearing the syscall trace flag. The increased syscall overhead is retained after the trace is finished. This case happens when strace is terminated by force. Signed-off-by: Akiyama, Nobuyuki <akiyama.nobuyuk@jp.fujitsu.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'arch/ia64/kernel/ptrace.c')
-rw-r--r--arch/ia64/kernel/ptrace.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/ia64/kernel/ptrace.c b/arch/ia64/kernel/ptrace.c
index 3f8918782e0c..00f803246948 100644
--- a/arch/ia64/kernel/ptrace.c
+++ b/arch/ia64/kernel/ptrace.c
@@ -1573,6 +1573,7 @@ sys_ptrace (long request, pid_t pid, unsigned long addr, unsigned long data)
case PTRACE_DETACH:
/* detach a process that was attached. */
+ clear_tsk_thread_flag(child, TIF_SYSCALL_TRACE);
ret = ptrace_detach(child, data);
goto out_tsk;