Subject: Re: second pass at the "store the path of the executable in struct proc" patch
To: YAMAMOTO Takashi <yamt@mwd.biglobe.ne.jp>
From: Christos Zoulas <christos@zoulas.com>
List: tech-kern
Date: 09/30/2007 22:02:31
On Oct 1, 10:57am, yamt@mwd.biglobe.ne.jp (YAMAMOTO Takashi) wrote:
-- Subject: Re: second pass at the "store the path of the executable in struc

| > This is only true for executables that are in the path and the shell
| > constructs the path for you. Not true ./foo, ../foo, or foo where .
| > is in the path and foo is an executable in the current working directory.
| > Or if you execv("foo", ..); 
| 
| my point is, for this purpose, it isn't necessary to keep it in proc.

That is a good point, I just kept it because people requested it in the
past. I can keep it in the exec package for this particular use. I don't
mind getting rid of it. Then the pathref code can go too.

| > It is good enough for the uses procfs programs nee (finding ../lib and
| > opening shared libraries), and you can never win with rename and unlink.
| 
| never win?  you can point the new path after rename.
| iirc, it's what you want to follow here.  ie. what linux does.

Does linux really update it after a rename? What happens if you delete it?
What happens if a process chroots?

| p_pathref seems completely different thing from namei improvements to me.

I meant that the cache improvements will make sure that the name is always
found.

christos