Re: [PATCH 7/7] ptrace: s/tracehook_tracer_task()/ptrace_parent()/

From: Tejun Heo
Date: Thu Jun 23 2011 - 05:14:12 EST


Hello,

On Mon, Jun 20, 2011 at 10:16:03PM +0200, Oleg Nesterov wrote:
> On 06/17, Tejun Heo wrote:
> >
> > tracehook.h is on the way out. Rename tracehook_tracer_task() to
> > ptrace_parent() and move it from tracehook.h to ptrace.h.
>
> I am a bit surpised you decided to keep this helper. Can't we simply
> kill it?

I was being a bit lazy. If it can be killed, it would be great.

> OK, we will see. I guess this change is mostly needed to remove yet
> another function from tracehook.h.
>
> > @@ -216,7 +216,7 @@ static struct mm_struct *__check_mem_permission(struct task_struct *task)
> > if (task_is_stopped_or_traced(task)) {
> > int match;
> > rcu_read_lock();
> > - match = (tracehook_tracer_task(task) == current);
> > + match = (ptrace_parent(task) == current);
> > rcu_read_unlock();
> > if (match && ptrace_may_access(task, PTRACE_MODE_ATTACH))
>
> All we need
>
> if (task_is_traced(task) && task->parent == current) {
> if (ptrace_may_access()
> return mm;
> }
>
> Of course I do not blame this patch, my only point is that this helper
> only adds more confusion imho.

Yeah, it didn't seem like all the users actually required rcu
dereferencing and both the tracehook and ptrace function names are
confusing and not consistent in their use. We can convert the ones
which don't require rcu dereferencing to use ->parent directly and if
the left ones are few enough, maybe kill the helper altogether.

Thanks.

--
tejun
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/