From 7be6e28f0db946dcd31ee9f4b45c2c1530cf86bc Mon Sep 17 00:00:00 2001 From: Russell King Date: Sun, 6 May 2007 13:56:26 +0100 Subject: [PATCH] --- yaml --- r: 54013 b: refs/heads/master c: 5ba6d3febd4978f31b2c523d64d381603923a709 h: refs/heads/master i: 54011: d5696bdfacce2ae46a6d0f1a36ecb002e35fe202 v: v3 --- [refs] | 2 +- trunk/arch/arm/kernel/ptrace.c | 6 +++--- trunk/include/asm-arm/thread_info.h | 1 + 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 10452765f3f6..3ac02bb76c57 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 40435792525c49cf126ba92d223e877acb5ce021 +refs/heads/master: 5ba6d3febd4978f31b2c523d64d381603923a709 diff --git a/trunk/arch/arm/kernel/ptrace.c b/trunk/arch/arm/kernel/ptrace.c index e594b84cca83..13af4006a40f 100644 --- a/trunk/arch/arm/kernel/ptrace.c +++ b/trunk/arch/arm/kernel/ptrace.c @@ -779,8 +779,8 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) break; case PTRACE_SET_SYSCALL: + task_thread_info(child)->syscall = data; ret = 0; - child->ptrace_message = data; break; #ifdef CONFIG_CRUNCH @@ -817,7 +817,7 @@ asmlinkage int syscall_trace(int why, struct pt_regs *regs, int scno) ip = regs->ARM_ip; regs->ARM_ip = why; - current->ptrace_message = scno; + current_thread_info()->syscall = scno; /* the 0x80 provides a way for the tracing parent to distinguish between a syscall stop and SIGTRAP delivery */ @@ -834,5 +834,5 @@ asmlinkage int syscall_trace(int why, struct pt_regs *regs, int scno) } regs->ARM_ip = ip; - return current->ptrace_message; + return current_thread_info()->syscall; } diff --git a/trunk/include/asm-arm/thread_info.h b/trunk/include/asm-arm/thread_info.h index 5014794f9eb3..eae85b09db2e 100644 --- a/trunk/include/asm-arm/thread_info.h +++ b/trunk/include/asm-arm/thread_info.h @@ -57,6 +57,7 @@ struct thread_info { __u32 cpu; /* cpu */ __u32 cpu_domain; /* cpu domain */ struct cpu_context_save cpu_context; /* cpu context */ + __u32 syscall; /* syscall number */ __u8 used_cp[16]; /* thread used copro */ unsigned long tp_value; struct crunch_state crunchstate;