Messages in this thread | | | Date | Tue, 10 May 2022 17:34:53 +0200 | From | Oleg Nesterov <> | Subject | Re: [PATCH v4 10/12] ptrace: Don't change __state |
| |
On 05/10, Eric W. Biederman wrote: > > > But I still think that a lockless > > > > if (!(task->jobctl & JOBCTL_PTRACE_FROZEN)) > > return; > > > > check at the start of ptrace_unfreeze_traced() makes sense to avoid > > lock_task_sighand() if possible. > > > > And ptrace_resume() can probably clear JOBCTL_PTRACE_FROZEN along with > > JOBCTL_TRACED to make this optimization work better. The same for > > ptrace_signal_wake_up(). > > What do you have that suggests that taking siglock there is a problem?
Not necessarily a problem, but this optimization is free. If the tracee was resumed, it can compete for siglock with debugger.
> What you propose will definitely work as an incremental change, and > in an incremental change we can explain why doing the stupid simple > thing is not good enough.
OK.
Oleg.
| |