Messages in this thread | | | Date | Thu, 23 Jun 2011 11:14:00 +0200 | From | Tejun Heo <> | Subject | Re: [PATCH 7/7] ptrace: s/tracehook_tracer_task()/ptrace_parent()/ |
| |
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
| |