]> www.infradead.org Git - users/jedix/linux-maple.git/commit
Pass down the tgid to userspace in u{stack,sym,mod,addr}().
authorNick Alcock <nick.alcock@oracle.com>
Mon, 17 Mar 2014 16:39:07 +0000 (16:39 +0000)
committerKris Van Hees <kris.van.hees@oracle.com>
Thu, 24 Apr 2014 09:32:43 +0000 (05:32 -0400)
commite25e4d3c4d058837ab9408128444a51ec0438e91
tree5a4968795714d1605b4e84d85a3e6a1729236b3d
parentde11935fd3dbb605891a6f16763329fbdc9c43a4
Pass down the tgid to userspace in u{stack,sym,mod,addr}().

Userspace does not know how to attach to threads, only processes (thread group
leaders).  All it's doing after attaching is looking up symbols, which are per-
process anyway, so rather than go to the effort of teaching userspace to grab
and release non-thread-group-leaders, simply pass the tgid to userspace so that
it can grab everything the same way.

Also pass the pid (== tid) down, because DTrace consumers could reasonably want
to know the actual thread ID in which the u*() fired (though our userspace does
not care).

This means we are passing one extra item on the buffer for ustack() et al:
internal uses are adjusted accordingly.

Orabug: 18412802
Signed-off-by: Nick Alcock <nick.alcock@oracle.com>
Reviewed-by: Kris Van Hees <kris.van.hees@oracle.com>
Acked-by: Chuck Anderson <chuck.anderson@oracle.com>
dtrace/dtrace_dif.c
dtrace/dtrace_ecb.c
dtrace/dtrace_isa.c
dtrace/dtrace_probe.c