Lines Matching refs:vnode
51 * Lock the vnode(s) being operated upon.
55 struct afs_vnode *vnode = op->file[0].vnode;
56 struct afs_vnode *vnode2 = op->file[1].vnode;
61 mutex_lock(&vnode->io_lock);
67 if (!vnode2 || !op->file[1].need_io_lock || vnode == vnode2)
70 if (vnode2 > vnode)
71 swap(vnode, vnode2);
73 if (mutex_lock_interruptible(&vnode->io_lock) < 0) {
85 mutex_unlock(&vnode->io_lock);
99 struct afs_vnode *vnode = op->file[0].vnode;
100 struct afs_vnode *vnode2 = op->file[1].vnode;
107 mutex_unlock(&vnode->io_lock);
113 struct afs_vnode *vnode = vp->vnode;
115 if (vnode) {
116 vp->fid = vnode->fid;
117 vp->dv_before = vnode->status.data_version;
118 vp->cb_break_before = afs_calc_vnode_cb_break(vnode);
119 if (vnode->lock_state != AFS_VNODE_LOCK_NONE)
122 set_bit(AFS_VNODE_MODIFYING, &vnode->flags);
125 if (vp->fid.vnode)
127 index, vp->fid.vid, vp->fid.vnode, vp->fid.unique);
133 * Fileserver operations are serialised on the server by vnode, so we serialise
138 struct afs_vnode *vnode = op->file[0].vnode;
140 ASSERT(vnode);
156 * Tidy up a filesystem cursor and unlock the vnode.
229 clear_bit(AFS_VNODE_MODIFYING, &op->file[0].vnode->flags);
230 if (op->file[1].modification && op->file[1].vnode != op->file[0].vnode)
231 clear_bit(AFS_VNODE_MODIFYING, &op->file[1].vnode->flags);
233 iput(&op->file[0].vnode->vfs_inode);
235 iput(&op->file[1].vnode->vfs_inode);
240 iput(&op->more_files[i].vnode->vfs_inode);