On Tue, 1 Feb 2005, Bill Davidsen wrote:

> Tim Schmielau wrote:
> > The ppid of a process is not really helpful if I want to reconstruct the 
> > real history of processes on a machine, since it may become 1 when the
> > parent dies and the process is reparented to init.
> > 
> > I am not aware of concepts in Linux or other unices that apply to this
> > case. So I made up the "biological parent pid" bioppid (in contrast to the
> > adoptive parents pid) that just never changes.
> > Any user of it must of course remember that it doesn't need to be a valid 
> > pid anymore or might even belong to a different process that was forked in 
> > the meantime. bioppid only had to be a valid pid at time btime (it's
> > a (btime, pid) pair that unambiguously identifies a process).
> 
> I think you are not only using a hammer to swat a fly, buy the wrong 
> fly. Would it not do as well to log reparenting? You could even add that 
> as an option to init, although if you are being lazy about tracking the 
> original parent a kernel log saying something like
>    reparent PID1 from PID2 to PID3
> would be best. While I think all current reparenting is done to init, I 
> could certainly think of a use for a method to reparent back to the 
> grandparent, just to keep the accounting clean.

My idea of a hammer seems to be slightly different. After all, I just 
added _two_lines_ of code [*] to log useful information where useless info 
was logged before.

Any new logging mechanism would be orders of magnitude more expensive.

Tim


[*] or, in other word, 4 bytes per task_struct and one instruction 
to fill that.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to