Re: Trouble with ptrace self-attach rule since kernel > 2.6.14

From: Andreas Hobein
Date: Mon Sep 04 2006 - 17:39:45 EST


> On Monday 04 September 2006 17:23, you wrote:
> > Could you test your application with 2.6.18-rc6 and this change
> >
> > - if (task == current)
> > + if (task->tgid == current->tgid)
> >
> > reverted? I think any report, positive or negative, would be useful.

Reverting this change in kernel 2.6.18-rc6 was successful, that means my
application has the old behaviour as before 2.6.15. I don't know why patching
the fedora kernel didn't lead to the same result.

I've tested tracing child threads from the parent thread as well as tracing
siblings and parent threads from a child. All tests where successful when
reverting the above mentioned changes.

I cannot judge wether reverting back to "if (task == current)" would cause
trouble in other cases. On the other hand, I'm quite happy with my
fork()/pipe() solution that works fine in my application so there is no need
to go back from my point of view.

I started this discussion mainly to get more background information, why
ptracing sibling threads is forbidden since kernel 2.6.15. I hope I
understood correctly that this change was a trade-off between removing the
self attach feature and elliminating many serious bugs. Thus I would
understand if the change won't be reverted in future kernel versions.

Andreas
-
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/