• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-WNDR4500-V1.0.1.40_1.0.68/src/linux/linux-2.6/fs/afs/

Lines Matching refs:vnode

78  * get the authorising vnode - this is the specified inode itself if it's a
83 static struct afs_vnode *afs_get_auth_inode(struct afs_vnode *vnode,
91 if (S_ISDIR(vnode->vfs_inode.i_mode)) {
92 auth_inode = igrab(&vnode->vfs_inode);
95 auth_inode = afs_iget(vnode->vfs_inode.i_sb, key,
96 &vnode->status.parent, NULL, NULL);
102 _leave(" = {%x}", auth_vnode->fid.vnode);
107 * clear the permit cache on a directory vnode
109 void afs_clear_permits(struct afs_vnode *vnode)
113 _enter("{%x:%u}", vnode->fid.vid, vnode->fid.vnode);
115 mutex_lock(&vnode->permits_lock);
116 permits = vnode->permits;
117 rcu_assign_pointer(vnode->permits, NULL);
118 mutex_unlock(&vnode->permits_lock);
126 * add the result obtained for a vnode to its or its parent directory's cache
129 void afs_cache_permit(struct afs_vnode *vnode, struct key *key, long acl_order)
137 vnode->fid.vid, vnode->fid.vnode, key_serial(key), acl_order);
139 auth_vnode = afs_get_auth_inode(vnode, key);
149 if (memcmp(&auth_vnode->fid, &vnode->status.parent,
164 _debug("anon access %x", vnode->status.anon_access);
165 auth_vnode->status.anon_access = vnode->status.anon_access;
166 if (key == vnode->volume->cell->anonymous_key)
180 vnode->status.caller_access;
196 key_serial(key), vnode->status.caller_access);
197 permits->permits[count].access_mask = vnode->status.caller_access;
216 static int afs_check_permit(struct afs_vnode *vnode, struct key *key,
226 vnode->fid.vid, vnode->fid.vnode, key_serial(key));
228 auth_vnode = afs_get_auth_inode(vnode, key);
266 set_bit(AFS_VNODE_CB_BROKEN, &vnode->flags);
267 ret = afs_vnode_fetch_status(vnode, auth_vnode, key);
274 *_access = vnode->status.caller_access;
289 struct afs_vnode *vnode = AFS_FS_I(inode);
295 vnode->fid.vid, vnode->fid.vnode, vnode->flags, mask);
297 key = afs_request_key(vnode->volume->cell);
304 if (!vnode->cb_promised) {
306 ret = afs_vnode_fetch_status(vnode, NULL, key);
309 _debug("new promise [fl=%lx]", vnode->flags);
313 ret = afs_check_permit(vnode, key, &access);