On Wed, 13 Feb 2008, Alfred Perlstein wrote:

* Robert Watson <[EMAIL PROTECTED]> [080213 07:45] wrote:
rwatson     2008-02-13 15:45:12 UTC

  FreeBSD src repository

  Modified files:
    sys/fs/coda          cnode.h coda_subr.c coda_vnops.c
  Log:
...
  Since the Coda module is agressive about not keeping around
  unopened cnodes, the utility of the cache is somewhat limited for
  files, but works will for directories.  We should make Coda less
  agressive about GCing cnodes in VOP_INACTIVE() in order to improve
  the effectiveness of in-kernel caching of attributes and access
  rights.

Move the GC to the VOP_RECLAIM VOP and you'll get what you want.

It's not quite that simple, unfortunately -- it's not clear that the kernel gets reliable access to the link count of the object, so may not be able to make an informed decision about whether it's appropriate to vrecycle() in VOP_INACTIVE(). Also, there's a downcall to userspace for VOP_INACTIVE(), but not for VOP_RECLAIM(), and I need to think a bit about whether the two are sufficiently equivalent to move the inactive downcall to reclaim. I'm looking at making the VOP_RECLAIM change, but I think there's more legwork to be done first.

Robert N M Watson
Computer Laboratory
University of Cambridge
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to