Konstantin Belousov writes:

The procfs links, as well as any other user of vn_fullpath(9) function,
can only translate a vnode to path if namecache contains useful data.
As such, the facilities are not guaranteed to success all the time.

In case of rmdir(2), UFS explicitely purges the cache for directory which
contained direntry of the removed directory. I suspect that you have
your test program binary located in the same directory which was the parent
of the removed one.

Correct. Looks like the same thing applies if I try to use sysctl to get KERN_PROC_PATHNAME.

I need some reliable way to get a process's executable file's name, as long as it's meaningful (the executable file hasn't been removed).


Attachment: pgp3du4KHyLZn.pgp
Description: PGP signature

Reply via email to