OpenAFS CVS Commit: openafs/src/afs by shadow
cvs@GRAND.CENTRAL.ORG
cvs@GRAND.CENTRAL.ORG
Sun, 30 Jan 2005 23:18:56 EST
Update of /cvs/openafs/src/afs
In directory GRAND.CENTRAL.ORG:/data/sb/openafs-stable-1_4_x/src/afs
Modified Files:
Tag: openafs-stable-1_4_x
afs_vcache.c
Log Message:
DELTA STABLE14-linux26-vcache-reclaim-cleanup-20050119
AUTHOR chas@cmf.nrl.navy.mil
FIXES
"ok, if you ever drop
dcache_lock you need to go to restart (i think that's pretty clear).
shrink_dcache_parent() _might_ reduce a dentry count to 0. in the
previous version, it seemed to make the assumption that this would
always happen. if shrink_dcache_parent() is unsuccessful and the
dentry is a directory, we cant restart. we would just find the
the dentry again and do the same thing over (we could always d_drop
but you shouldnt do this to active directories -- see d_invalidate).
if we find a busy dentry, we abort all processing for this inode.
going back to restart would find the same busy inode. (i suppose
we could use a d_flag to keep track of which dentry has been shrunk.
this has other trouble, like who resets the flag and when?) since we
only do this for directories and d_alias typically only grows due to
soft/hard links (as far as i can tell) this scheme seems reasonable."
--- DELTA config for openafs-stable-1_4_x follows ---
STABLE14-linux26-vcache-reclaim-cleanup-20050119 openafs/src/afs/afs_vcache.c 1.65.2.6 1.65.2.7