Re: NFS client llseek

Trond Myklebust (trond.myklebust@fys.uio.no)
Mon, 17 Dec 2001 21:34:19 +0100


>>>>> Alexander Viro <viro@math.psu.edu> writes:

> getattr() is needed and will be added (patch exists), but the
> thing about ->revalidate()... It's a bloody mess that will
> need serious cleanups. And I'd rather have fewer code paths
> involved into that cleanup.

AFAIK, revalidate() was originally simply meant to check the validity
of the cached attributes, refreshing them if the cache is stale.

If it is being used as a replacement for getattr() in some cases but
not others, then I agree it needs to go.

That said, I would still like the ability to inform the filesystem
that it needs to refresh the attribute cache. This is required in
order to close the remaining hole in the close-to-open cache semantics
when doing opendir(".").
For the moment, I'm hacking in a call 'check_stale(inode)' that is
used by the 'cto' patch to notify NFS in the above case, when the VFS
tries to open() a file while bypassing the dentry revalidation call.

Cheers,
Trond
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/