Messages in this thread | | | Date | Wed, 22 Feb 2017 17:55:39 +0100 | From | Oleg Nesterov <> | Subject | Re: [PATCH] ptrace: fix PTRACE_LISTEN race corrupting task->state |
| |
On 02/21, bsegall@google.com wrote: > > In PT_SEIZED + LISTEN mode SIGSTOP/SIGCONT signals cause a wakeup > against __TASK_TRACED. If this races with the ptrace_unfreeze_traced at > the end of a PTRACE_LISTEN, this can wake the task /after/ the check > against __TASK_TRACED, but before the reset of state to TASK_TRACED.
Oh, thanks...
note also that PTRACE_LISTEN itself can do ptrace_signal_wake_up(true),
> This causes it to instead clobber TASK_WAKING,
even if it is already TASK_RUNNING it is simply wrong to set TASK_TRACED in both cases, right?
Thanks. The patch looks good at first glance, but let me think a bit... perhaps we should change PTRACE_LISTEN instead, not sure.
Oleg.
| |