ZFS, procfs and java

Pawel Jakub Dawidek pjd at FreeBSD.org
Sat Apr 21 10:12:26 UTC 2007


On Sat, Apr 21, 2007 at 11:08:21AM +0100, Robert Watson wrote:
> 
> On Fri, 20 Apr 2007, Stephane E. Potvin wrote:
> 
> >It seems that the ZFS cache (dnlc) doesn't update the VSF_namecache fields in the vnodes (v_cache_src, v_cache_dst and v_dd). This unfortunately causes the file link in 
> >/proc/curproc to return "unknown" as it uses vn_fullpath which relies on the namecache fields to be set correctly.
> >
> >Java uses /proc/curproc/file to know where to find its libraries and doesn't expect the "unknown" return value returned when using ZFS (due to vn_fullpath failing). The 
> >attached patches to the java/jdk15 port fixes this issue but it doesn't fix the root of the problem.
> >
> >Would it be possible to add support in dnlc for updating the VFS namecache fields or to add knowledge of dnlc into vn_fullpath?
> 
> No application should rely on the correctness and usefulness of /proc/curproc/file -- the conversion from a vnode to a pathname is inherently unreliable.  Likewise, 
> properly ported applications should not rely on the availability of procfs, as its use is deprecated.  My advice would be to talk to the Java porters about entirely 
> eliminating this dependency.
> 
> As a matter of debugging/logging convenience, it would be nice if ZFS implemented the name cache hooks, since using vn_fullpath is useful for procfs monitoring of process 
> address space, audit, etc.

I tried to teach ZFS about our namecache (the code is under
FREEBSD_NAMECACHE define), but it didn't worked stable, I'm probably
still missing something. On the other hand it was rather easy to use
namecache from OpenSolaris with ZFS (DNLC).

-- 
Pawel Jakub Dawidek                       http://www.wheel.pl
pjd at FreeBSD.org                           http://www.FreeBSD.org
FreeBSD committer                         Am I Evil? Yes, I Am!
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20070421/da4c7c69/attachment.pgp


More information about the freebsd-current mailing list