On 08/21, Oleg Nesterov wrote:
>
> On 08/21, Srikar Dronamraju wrote:
> >
> > > Please note the comment, this check relies on UTRACE_ATTACH_EXCLUSIVE
> > > above. Once we see ->ptrace = 0 after utrace_attach_task(), nobody
> > > can change ->ptrace.
> >
> > However after attaching an engine exclusi
On 08/21, Srikar Dronamraju wrote:
>
> > Please note the comment, this check relies on UTRACE_ATTACH_EXCLUSIVE
> > above. Once we see ->ptrace = 0 after utrace_attach_task(), nobody
> > can change ->ptrace.
>
> However after attaching an engine exclusively, (which would mean the
> child is not trac
Hi Oleg,
Thanks for the clarification.
>
> Please note the comment, this check relies on UTRACE_ATTACH_EXCLUSIVE
> above. Once we see ->ptrace = 0 after utrace_attach_task(), nobody
> can change ->ptrace.
However after attaching an engine exclusively, (which would mean the
child is not traced o
Hi Srikar,
On 08/21, Srikar Dronamraju wrote:
> >
> > --- PU/kernel/ptrace.c~09_MV_PTRACE_CK 2009-08-19 16:49:25.0
> > +0200
> > +++ PU/kernel/ptrace.c 2009-08-20 20:04:59.0 +0200
> > @@ -471,35 +471,47 @@ static int ptrace_attach_task(struct tas
> > {
> > struct ut
Hi Oleg,
>
> --- PU/kernel/ptrace.c~09_MV_PTRACE_CK2009-08-19 16:49:25.0
> +0200
> +++ PU/kernel/ptrace.c2009-08-20 20:04:59.0 +0200
> @@ -471,35 +471,47 @@ static int ptrace_attach_task(struct tas
> {
> struct utrace_engine *engine;
> unsigned long
pdated patch below.
-----------
[PATCH 09] move ->ptrace == 0 checks to ptrace_attach_task()
Until we kill ->ptrace, attach must ensure ->ptrace == 0 to avoid the
races with detach. We can move these checks to ptrace_attach_task()
from the callers, and we can do this check lockless.
>From now
Until we kill ->ptrace, attach must ensure ->ptrace == 0 to avoid the
races with detach. We can move these checks to ptrace_attach_task()
from the callers, and we can do this check lockless.
>From now ptrace_abort_attach() is only called when the tracee had no
chance to execute any callback, a sim