Re: [PATCH] ptrace: add ability to get clear_tid_address

From: Oleg Nesterov
Date: Fri Feb 03 2012 - 11:58:01 EST


On 02/03, Pavel Emelyanov wrote:
>
> On 02/03/2012 08:25 PM, Tejun Heo wrote:
> > On Fri, Feb 03, 2012 at 02:11:23PM +0300, Andrew Vagin wrote:
> >> Zero is written at clear_tid_address, when the process exits.
> >> This functionality is used by pthread_join().
> >>
> >> sys_set_tid_address() changes this address for current task.
> >>
> >> Before this patch clear_tid_address could not be got from user space.
> >> I want to dump a full state of a task, so I need this address.
> >> Also I think it may be useful for debugging a multithreading program.
> >>
> >> I am not sure that ptrace is suitable place. It may be added in prctl,
> >> but I think it's a bit useless and strange. I can't image a real
> >> situation (avoid checkpointing) when a thread will want to get own
> >> clear_tid_address from itself, this address is used by parent ussually.
> >>
> >> Signed-off-by: Andrew Vagin <avagin@xxxxxxxxxx>
> >
> > Ummm... this really doesn't fit in ptrace. Cyrill, why not put it
> > together with other params you're exporting?
>
> Because there's no need for current to get this value of himself, but can
> be useful for e.g. gdb.

OK, perhaps this makes sense, I do not know.

Jan, Pedro, do you think gdb can use PTRACE_GET_TID_ADDRESS (returns
tracee->clear_child_tid) ?

Oleg.

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