[AFS]: Add "directory write" support.
Add support for the create, link, symlink, unlink, mkdir, rmdir and rename VFS operations to the in-kernel AFS filesystem. Also: (1) Fix dentry and inode revalidation. d_revalidate should only look at state of the dentry. Revalidation of the contents of an inode pointed to by a dentry is now separate. (2) Fix afs_lookup() to hash negative dentries as well as positive ones. Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
c35eccb1f6
commit
260a980317
@@ -50,6 +50,7 @@ int afs_open(struct inode *inode, struct file *file)
|
||||
{
|
||||
struct afs_vnode *vnode = AFS_FS_I(inode);
|
||||
struct key *key;
|
||||
int ret;
|
||||
|
||||
_enter("{%x:%x},", vnode->fid.vid, vnode->fid.vnode);
|
||||
|
||||
@@ -59,6 +60,12 @@ int afs_open(struct inode *inode, struct file *file)
|
||||
return PTR_ERR(key);
|
||||
}
|
||||
|
||||
ret = afs_validate(vnode, key);
|
||||
if (ret < 0) {
|
||||
_leave(" = %d [val]", ret);
|
||||
return ret;
|
||||
}
|
||||
|
||||
file->private_data = key;
|
||||
_leave(" = 0");
|
||||
return 0;
|
||||
|
Reference in New Issue
Block a user