Update cache flushing behavior in light of recent namecache and
access cache improvements: - Flush just access control state on CODA_PURGEUSER, not the full namecache for /coda. - When replacing a fid on a cnode as a result of, e.g., reintegration after offline operation, we no longer need to purge the namecache entries associated with its vnode. MFC after: 1 month
This commit is contained in:
parent
df77ed7558
commit
89d1d7886a
@ -478,12 +478,6 @@ handleDownCall(struct coda_mntinfo *mnt, int opcode, union outputArgs *out)
|
||||
coda_acccache_purgeuser(mnt->mi_vfsp,
|
||||
out->coda_purgeuser.uid);
|
||||
#endif
|
||||
/*
|
||||
* For now, we flush the entire namecache, but this is
|
||||
* undesirable. Once we have an access control cache, we
|
||||
* should just flush that instead.
|
||||
*/
|
||||
cache_purgevfs(mnt->mi_vfsp);
|
||||
return (0);
|
||||
}
|
||||
|
||||
@ -570,7 +564,6 @@ handleDownCall(struct coda_mntinfo *mnt, int opcode, union outputArgs *out)
|
||||
* fid, and reinsert.
|
||||
*/
|
||||
vref(CTOV(cp));
|
||||
cache_purge(CTOV(cp));
|
||||
coda_unsave(cp);
|
||||
cp->c_fid = out->coda_replace.NewFid;
|
||||
coda_save(cp);
|
||||
|
Loading…
Reference in New Issue
Block a user