On 10/28, Roland McGrath wrote:
>
> Unlike the old code that freaked upstream reviewers all the way out,
> this has very simple lifetime rules for struct utrace.  Once allocated,
> it lives until task_struct is freed.  The utrace_task_alloc() logic
> covers the only race (at first attach), and that seems pretty easy
> to understand and be confident in.

Yep, I already noticed utrace-indirect branch before. While I didn't
look at the code closely, this change looks very simple and imho
desirable.

I'll try to read it carefully later.

> I am a bit concerned about letting the ugly utrace_struct.h way ever get
> merged in, so that to fix it later we have to convince people all over
> again about "changing what works".  But of course I am really not at all
> sure whether even this innocuous version will upset the reviewers.

Yes, this is the question ;)

My opinion, it would be better to send this as a separate patch, when
the utrace is already merged. Because they were too many complaints
about task_struct->utrace pointer before. And given that nobody actually
read the code during review (at least this happened before), I am afraid
we can have "ugh, it is a pointer again?" complaints.

But of course I don't really sure.


Speaking of this change.

Do you think we can remove "void *cookie" from exit_notify() pathes
before sending utrace/ptrace to lkml? Afaics, given that task->utrace
never goes away utrace-indirect doesn't need this hack.

Oleg.

Reply via email to