Lines Matching refs:vnode
28 static int afs_fill_page(struct afs_vnode *vnode, struct key *key,
38 if (pos >= vnode->vfs_inode.i_size) {
59 ret = afs_fetch_data(vnode, key, req);
65 set_bit(AFS_VNODE_DELETED, &vnode->flags);
81 struct afs_vnode *vnode = AFS_FS_I(file_inode(file));
91 vnode->fid.vid, vnode->fid.vnode, index, from, to);
98 ret = afs_fill_page(vnode, key, pos & PAGE_MASK, PAGE_SIZE, page);
122 trace_afs_page_dirty(vnode, tracepoint_string("alrdy"),
130 if (!test_bit(AFS_VNODE_NEW_CONTENT, &vnode->flags) &&
166 struct afs_vnode *vnode = AFS_FS_I(file_inode(file));
175 vnode->fid.vid, vnode->fid.vnode, page->index);
182 i_size = i_size_read(&vnode->vfs_inode);
184 write_seqlock(&vnode->cb_lock);
185 i_size = i_size_read(&vnode->vfs_inode);
187 afs_set_i_size(vnode, maybe_i_size);
188 write_sequnlock(&vnode->cb_lock);
197 ret = afs_fill_page(vnode, key, pos + copied,
215 trace_afs_page_dirty(vnode, tracepoint_string("dirty+"),
220 trace_afs_page_dirty(vnode, tracepoint_string("dirty"),
241 struct afs_vnode *vnode = AFS_FS_I(mapping->host);
246 vnode->fid.vid, vnode->fid.vnode, first, last);
284 struct afs_vnode *vnode = AFS_FS_I(mapping->host);
289 vnode->fid.vid, vnode->fid.vnode, first, last);
320 static void afs_pages_written_back(struct afs_vnode *vnode,
328 vnode->fid.vid, vnode->fid.vnode, first, last);
338 pv.nr = find_get_pages_contig(vnode->vfs_inode.i_mapping,
344 trace_afs_page_dirty(vnode, tracepoint_string("clear"),
352 afs_prune_wb_keys(vnode);
358 * writes on the vnode. *_wbk will contain the last writeback key used or NULL
361 static int afs_get_writeback_key(struct afs_vnode *vnode,
368 spin_lock(&vnode->wb_lock);
372 p = vnode->wb_keys.next;
374 while (p != &vnode->wb_keys) {
390 spin_unlock(&vnode->wb_lock);
399 struct afs_vnode *vnode = op->file[0].vnode;
405 afs_pages_written_back(vnode, op->store.first, op->store.last);
406 afs_stat_v(vnode, n_stores);
409 &afs_v2net(vnode)->n_store_bytes);
426 struct afs_vnode *vnode = AFS_FS_I(mapping->host);
432 vnode->volume->name,
433 vnode->fid.vid,
434 vnode->fid.vnode,
435 vnode->fid.unique,
438 ret = afs_get_writeback_key(vnode, &wbk);
444 op = afs_alloc_operation(wbk->key, vnode->volume);
450 afs_op_set_vnode(op, 0, vnode);
459 op->mtime = vnode->vfs_inode.i_mtime;
476 ret = afs_get_writeback_key(vnode, &wbk);
499 struct afs_vnode *vnode = AFS_FS_I(mapping->host);
522 trace_afs_page_dirty(vnode, tracepoint_string("store"),
527 trace_afs_page_dirty(vnode, tracepoint_string("WARN"),
531 (to < PAGE_SIZE && !test_bit(AFS_VNODE_NEW_CONTENT, &vnode->flags)))
554 !test_bit(AFS_VNODE_NEW_CONTENT, &vnode->flags))
569 !test_bit(AFS_VNODE_NEW_CONTENT, &vnode->flags)) {
575 trace_afs_page_dirty(vnode, tracepoint_string("store+"),
606 i_size = i_size_read(&vnode->vfs_inode);
644 trace_afs_file_error(vnode, ret, afs_file_error_writeback_fail);
749 struct afs_vnode *vnode = AFS_FS_I(mapping->host);
760 down_read(&vnode->validate_lock);
761 else if (!down_read_trylock(&vnode->validate_lock))
783 up_read(&vnode->validate_lock);
793 struct afs_vnode *vnode = AFS_FS_I(file_inode(iocb->ki_filp));
798 vnode->fid.vid, vnode->fid.vnode, count);
800 if (IS_SWAPFILE(&vnode->vfs_inode)) {
823 struct afs_vnode *vnode = AFS_FS_I(inode);
826 vnode->fid.vid, vnode->fid.vnode, file,
840 struct afs_vnode *vnode = AFS_FS_I(inode);
844 vnode->fid.vid, vnode->fid.vnode, vmf->page->index);
852 fscache_wait_on_page_write(vnode->cache, vmf->page);
870 trace_afs_page_dirty(vnode, tracepoint_string("mkwrite"),
883 * Prune the keys cached for writeback. The caller must hold vnode->wb_lock.
885 void afs_prune_wb_keys(struct afs_vnode *vnode)
891 spin_lock(&vnode->wb_lock);
893 if (!mapping_tagged(&vnode->vfs_inode.i_data, PAGECACHE_TAG_WRITEBACK) &&
894 !mapping_tagged(&vnode->vfs_inode.i_data, PAGECACHE_TAG_DIRTY)) {
895 list_for_each_entry_safe(wbk, tmp, &vnode->wb_keys, vnode_link) {
901 spin_unlock(&vnode->wb_lock);
916 struct afs_vnode *vnode = AFS_FS_I(mapping->host);
932 trace_afs_page_dirty(vnode, tracepoint_string("launder"),
938 trace_afs_page_dirty(vnode, tracepoint_string("laundered"),
943 fscache_wait_on_page_write(vnode->cache, page);
944 fscache_uncache_page(vnode->cache, page);