OpenAFS CVS Commit: openafs/src/afs/LINUX by shadow

cvs@GRAND.CENTRAL.ORG cvs@GRAND.CENTRAL.ORG
Mon, 23 May 2005 17:09:45 EDT


Update of /cvs/openafs/src/afs/LINUX
In directory GRAND.CENTRAL.ORG:/data/sb/openafs-stable-1_4_x/src/afs/LINUX

Modified Files:
      Tag: openafs-stable-1_4_x
	osi_vnodeops.c 
Log Message:
DELTA STABLE14-d-revalidate-redux-20050508
AUTHOR chas@cmf.nrl.navy.mil
FIXES 18588

when the callback for a directory is broken the children of this vnode
are not invalidated as well. so VerifyVCache() always believes these
vnodes to be up to date since they will still have the CStatd flag.

perhaps breaking the callback on a directory should also clear CStatd
on children vnodes?

this isnt a problem for other operating system which go through the
dnlc which does purge the children entries for the vnode in question
during ClearCallBack().

since d_revalidate now avoids the dnlc (and afs_lookup) the following
patch tracks the parent vnode's DataVersion (just the lower half really
but this should be sufficient) in d_time. if the parent has changed
then the dentry is flagged as neededing updated.


--- DELTA config for openafs-stable-1_4_x follows ---
STABLE14-d-revalidate-redux-20050508 openafs/src/afs/LINUX/osi_vnodeops.c 1.81.2.19 1.81.2.20