Ptrace Sys Call
Rough Draft
01/11/2004 06:58:13
DOUBT: Can a child be ptraces by more than 1 process??
1. First line of __ptrace_link() states that if a process is already being
ptraced, then it is a BUG() to trace it again.
Func: __ptrace_link()
Working: Makes debugging process the parent of the process which is being
debugged. Also tag child's ptrace list to parent's ptrace_children variable(??)
I think this is being done so that the parent might know which all children is
it debugging.
NOTE: There are 2 parents associated with a child - current parent and real
parent. A real parent is one which was forked to create this process. Current
parent is one which is currently pptracing this process. Both may not be the
same. They are definitely not same when the process is being ptraced.
Func: ptrace_attach
This is the core func. It is used to attach the passed process as the one which
is being tracked by the *current* process.
Func: access_process_...
My meanderings into the heart of Linux Kernel