summaryrefslogtreecommitdiffstats
path: root/arch/um/kernel/signal.c
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@xmission.com>2022-04-26 16:30:17 -0500
committerEric W. Biederman <ebiederm@xmission.com>2022-05-11 14:33:33 -0500
commitc200e4bb44e80b343c09841e7caaaca0aac5e5fa (patch)
tree5318db1a0ff49083693b76d52968338c5aaa19f9 /arch/um/kernel/signal.c
parente71ba124078e391879e0bf111529fa2d630d106c (diff)
downloadlinux-c200e4bb44e80b343c09841e7caaaca0aac5e5fa.tar.gz
linux-c200e4bb44e80b343c09841e7caaaca0aac5e5fa.tar.bz2
linux-c200e4bb44e80b343c09841e7caaaca0aac5e5fa.zip
ptrace/um: Replace PT_DTRACE with TIF_SINGLESTEP
User mode linux is the last user of the PT_DTRACE flag. Using the flag to indicate single stepping is a little confusing and worse changing tsk->ptrace without locking could potentionally cause problems. So use a thread info flag with a better name instead of flag in tsk->ptrace. Remove the definition PT_DTRACE as uml is the last user. Cc: stable@vger.kernel.org Acked-by: Johannes Berg <johannes@sipsolutions.net> Tested-by: Kees Cook <keescook@chromium.org> Reviewed-by: Oleg Nesterov <oleg@redhat.com> Link: https://lkml.kernel.org/r/20220505182645.497868-3-ebiederm@xmission.com Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
Diffstat (limited to 'arch/um/kernel/signal.c')
-rw-r--r--arch/um/kernel/signal.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/um/kernel/signal.c b/arch/um/kernel/signal.c
index 88cd9b5c1b74..ae4658f576ab 100644
--- a/arch/um/kernel/signal.c
+++ b/arch/um/kernel/signal.c
@@ -53,7 +53,7 @@ static void handle_signal(struct ksignal *ksig, struct pt_regs *regs)
unsigned long sp;
int err;
- if ((current->ptrace & PT_DTRACE) && (current->ptrace & PT_PTRACED))
+ if (test_thread_flag(TIF_SINGLESTEP) && (current->ptrace & PT_PTRACED))
singlestep = 1;
/* Did we come from a system call? */
@@ -128,7 +128,7 @@ void do_signal(struct pt_regs *regs)
* on the host. The tracing thread will check this flag and
* PTRACE_SYSCALL if necessary.
*/
- if (current->ptrace & PT_DTRACE)
+ if (test_thread_flag(TIF_SINGLESTEP))
current->thread.singlestep_syscall =
is_syscall(PT_REGS_IP(&current->thread.regs));