On 07/22, Roland McGrath wrote:
>
> > I still think EXIT_DEAD check must die ;)
>
> In get_utrace_lock, you mean?  Do you mean it's superfluous because we can
> rely on utrace_reap having cleared engine->ops before it matters to us?

Yes. Perhaps I missed something, but this check buys nothing. First of
all this check is racy without tasklist. Bit it is also unneeded, I think.

> > Or. Actually, when I started read utrace.c I was surprised there is
> > no "task_struct *tracee" in "struct utrace_engine". Perhaps engine
> > itself should ping task_struct ? And engine->tracee can be very handy.
>
> I don't think a detached struct utrace_engine should pin any task_struct.
> That just makes utrace_engine_{get,put} a proxy for {get,put}_task_struct.

Yes,

> And if it doesn't, then it's not much different from what we have now, is
> it?

OK, agreed.


Perhaps engine->tracee still makes sense even if engine doesn't pin
task_struct, utrace_control/barrier/set_events do not need "target"
argument in this case. And this means it would a bit be easier to
use them. And we can kill _pid() helpers. But this is another story.

Oleg.

Reply via email to