Lines Matching refs:inode
51 struct inode *inode);
133 struct inode *inode = page_file_mapping(page)->host; in nfs_page_find_head_request() local
136 spin_lock(&inode->i_lock); in nfs_page_find_head_request()
137 req = nfs_page_find_head_request_locked(NFS_I(inode), page); in nfs_page_find_head_request()
138 spin_unlock(&inode->i_lock); in nfs_page_find_head_request()
145 struct inode *inode = page_file_mapping(page)->host; in nfs_grow_file() local
149 spin_lock(&inode->i_lock); in nfs_grow_file()
150 i_size = i_size_read(inode); in nfs_grow_file()
157 i_size_write(inode, end); in nfs_grow_file()
158 nfs_inc_stats(inode, NFSIOS_EXTENDWRITE); in nfs_grow_file()
160 spin_unlock(&inode->i_lock); in nfs_grow_file()
281 struct inode *inode = page_file_mapping(req->wb_page)->host; in nfs_end_page_writeback() local
282 struct nfs_server *nfss = NFS_SERVER(inode); in nfs_end_page_writeback()
324 nfs_unroll_locks_and_wait(struct inode *inode, struct nfs_page *head, in nfs_unroll_locks_and_wait() argument
326 __releases(&inode->i_lock) in nfs_unroll_locks_and_wait()
341 spin_unlock(&inode->i_lock); in nfs_unroll_locks_and_wait()
430 struct inode *inode = page_file_mapping(page)->host; in nfs_lock_and_join_requests() local
441 spin_lock(&inode->i_lock); in nfs_lock_and_join_requests()
448 head = nfs_page_find_head_request_locked(NFS_I(inode), page); in nfs_lock_and_join_requests()
451 spin_unlock(&inode->i_lock); in nfs_lock_and_join_requests()
459 spin_unlock(&inode->i_lock); in nfs_lock_and_join_requests()
485 spin_unlock(&inode->i_lock); in nfs_lock_and_join_requests()
492 ret = nfs_unroll_locks_and_wait(inode, head, in nfs_lock_and_join_requests()
539 spin_unlock(&inode->i_lock); in nfs_lock_and_join_requests()
579 struct inode *inode = page_file_mapping(page)->host; in nfs_do_writepage() local
582 nfs_inc_stats(inode, NFSIOS_VFSWRITEPAGE); in nfs_do_writepage()
583 nfs_add_stats(inode, NFSIOS_WRITEPAGES, 1); in nfs_do_writepage()
633 struct inode *inode = mapping->host; in nfs_writepages() local
634 unsigned long *bitlock = &NFS_I(inode)->flags; in nfs_writepages()
644 nfs_inc_stats(inode, NFSIOS_VFSWRITEPAGES); in nfs_writepages()
646 nfs_pageio_init_write(&pgio, inode, wb_priority(wbc), false, in nfs_writepages()
668 static void nfs_inode_add_request(struct inode *inode, struct nfs_page *req) in nfs_inode_add_request() argument
670 struct nfs_inode *nfsi = NFS_I(inode); in nfs_inode_add_request()
677 spin_lock(&inode->i_lock); in nfs_inode_add_request()
679 NFS_PROTO(inode)->have_delegation(inode, FMODE_WRITE)) in nfs_inode_add_request()
680 inode->i_version++; in nfs_inode_add_request()
697 spin_unlock(&inode->i_lock); in nfs_inode_add_request()
705 struct inode *inode = d_inode(req->wb_context->dentry); in nfs_inode_remove_request() local
706 struct nfs_inode *nfsi = NFS_I(inode); in nfs_inode_remove_request()
712 spin_lock(&inode->i_lock); in nfs_inode_remove_request()
721 spin_unlock(&inode->i_lock); in nfs_inode_remove_request()
723 spin_lock(&inode->i_lock); in nfs_inode_remove_request()
725 spin_unlock(&inode->i_lock); in nfs_inode_remove_request()
752 struct inode *inode = &nfsi->vfs_inode; in nfs_page_search_commits_for_head_request_locked() local
754 nfs_init_cinfo_from_inode(&cinfo, inode); in nfs_page_search_commits_for_head_request_locked()
757 freq = pnfs_search_commit_reqs(inode, &cinfo, page); in nfs_page_search_commits_for_head_request_locked()
820 struct inode *inode) in nfs_init_cinfo_from_inode() argument
822 cinfo->lock = &inode->i_lock; in nfs_init_cinfo_from_inode()
823 cinfo->mds = &NFS_I(inode)->commit_info; in nfs_init_cinfo_from_inode()
824 cinfo->ds = pnfs_get_ds_info(inode); in nfs_init_cinfo_from_inode()
830 struct inode *inode, in nfs_init_cinfo() argument
836 nfs_init_cinfo_from_inode(cinfo, inode); in nfs_init_cinfo()
864 struct inode *inode = d_inode(req->wb_context->dentry); in nfs_clear_request_commit() local
867 nfs_init_cinfo_from_inode(&cinfo, inode); in nfs_clear_request_commit()
889 nfs_init_cinfo_from_inode(&cinfo, hdr->inode); in nfs_write_completion()
957 nfs_scan_commit(struct inode *inode, struct list_head *dst, in nfs_scan_commit() argument
968 ret += pnfs_scan_commit_lists(inode, cinfo, max - ret); in nfs_scan_commit()
981 static struct nfs_page *nfs_try_to_update_request(struct inode *inode, in nfs_try_to_update_request() argument
995 spin_lock(&inode->i_lock); in nfs_try_to_update_request()
998 req = nfs_page_find_head_request_locked(NFS_I(inode), page); in nfs_try_to_update_request()
1021 spin_unlock(&inode->i_lock); in nfs_try_to_update_request()
1026 spin_lock(&inode->i_lock); in nfs_try_to_update_request()
1041 spin_unlock(&inode->i_lock); in nfs_try_to_update_request()
1044 spin_unlock(&inode->i_lock); in nfs_try_to_update_request()
1046 error = nfs_wb_page(inode, page); in nfs_try_to_update_request()
1061 struct inode *inode = page_file_mapping(page)->host; in nfs_setup_write_request() local
1064 req = nfs_try_to_update_request(inode, page, offset, bytes); in nfs_setup_write_request()
1070 nfs_inode_add_request(inode, req); in nfs_setup_write_request()
1139 nfs_key_timeout_notify(struct file *filp, struct inode *inode) in nfs_key_timeout_notify() argument
1142 struct rpc_auth *auth = NFS_SERVER(inode)->client->cl_auth; in nfs_key_timeout_notify()
1160 static bool nfs_write_pageuptodate(struct page *page, struct inode *inode) in nfs_write_pageuptodate() argument
1162 struct nfs_inode *nfsi = NFS_I(inode); in nfs_write_pageuptodate()
1164 if (nfs_have_delegated_attributes(inode)) in nfs_write_pageuptodate()
1192 static int nfs_can_extend_write(struct file *file, struct page *page, struct inode *inode) in nfs_can_extend_write() argument
1195 struct file_lock_context *flctx = inode->i_flctx; in nfs_can_extend_write()
1200 if (!nfs_write_pageuptodate(page, inode)) in nfs_can_extend_write()
1202 if (NFS_PROTO(inode)->have_delegation(inode, FMODE_WRITE)) in nfs_can_extend_write()
1236 struct inode *inode = page_file_mapping(page)->host; in nfs_updatepage() local
1239 nfs_inc_stats(inode, NFSIOS_VFSUPDATEPAGE); in nfs_updatepage()
1244 if (nfs_can_extend_write(file, page, inode)) { in nfs_updatepage()
1256 status, (long long)i_size_read(inode)); in nfs_updatepage()
1281 nfs4_state_protect_write(NFS_SERVER(hdr->inode)->nfs_client, in nfs_initiate_write()
1315 struct inode *inode, int ioflags, bool force_mds, in nfs_pageio_init_write() argument
1318 struct nfs_server *server = NFS_SERVER(inode); in nfs_pageio_init_write()
1325 nfs_pageio_init(pgio, inode, pg_ops, compl_ops, &nfs_rw_write_ops, in nfs_pageio_init_write()
1351 NFS_PROTO(data->inode)->commit_rpc_prepare(task, data); in nfs_commit_prepare()
1362 static int nfs_should_remove_suid(const struct inode *inode) in nfs_should_remove_suid() argument
1364 umode_t mode = inode->i_mode; in nfs_should_remove_suid()
1393 if (nfs_size_to_loff_t(fattr->size) < i_size_read(hdr->inode)) { in nfs_writeback_check_extend()
1408 struct inode *inode = hdr->inode; in nfs_writeback_update_inode() local
1410 spin_lock(&inode->i_lock); in nfs_writeback_update_inode()
1412 nfs_post_op_update_inode_force_wcc_locked(inode, fattr); in nfs_writeback_update_inode()
1413 spin_unlock(&inode->i_lock); in nfs_writeback_update_inode()
1422 struct inode *inode) in nfs_writeback_done() argument
1433 status = NFS_PROTO(inode)->write_done(task, hdr); in nfs_writeback_done()
1436 nfs_add_stats(inode, NFSIOS_SERVERWRITTENBYTES, hdr->res.count); in nfs_writeback_done()
1454 NFS_SERVER(inode)->nfs_client->cl_hostname, in nfs_writeback_done()
1461 if (nfs_should_remove_suid(inode)) in nfs_writeback_done()
1462 nfs_mark_for_revalidate(inode); in nfs_writeback_done()
1479 nfs_inc_stats(hdr->inode, NFSIOS_SHORTWRITE); in nfs_writeback_result()
1567 nfs4_state_protect(NFS_SERVER(data->inode)->nfs_client, in nfs_initiate_commit()
1601 struct inode *inode = d_inode(first->wb_context->dentry); in nfs_init_commit() local
1608 data->inode = inode; in nfs_init_commit()
1618 data->args.fh = NFS_FH(data->inode); in nfs_init_commit()
1651 nfs_commit_list(struct inode *inode, struct list_head *head, int how, in nfs_commit_list() argument
1664 return nfs_initiate_commit(NFS_CLIENT(inode), data, NFS_PROTO(inode), in nfs_commit_list()
1668 cinfo->completion_ops->error_cleanup(NFS_I(inode)); in nfs_commit_list()
1683 NFS_PROTO(data->inode)->commit_done(task, data); in nfs_commit_done()
1725 nfss = NFS_SERVER(data->inode); in nfs_commit_release_pages()
1729 nfs_init_cinfo(&cinfo, data->inode, data->dreq); in nfs_commit_release_pages()
1731 nfs_commit_clear_lock(NFS_I(data->inode)); in nfs_commit_release_pages()
1753 int nfs_generic_commit_list(struct inode *inode, struct list_head *head, in nfs_generic_commit_list() argument
1758 status = pnfs_commit_list(inode, head, how, cinfo); in nfs_generic_commit_list()
1760 status = nfs_commit_list(inode, head, how, cinfo); in nfs_generic_commit_list()
1764 int nfs_commit_inode(struct inode *inode, int how) in nfs_commit_inode() argument
1771 res = nfs_commit_set_lock(NFS_I(inode), may_wait); in nfs_commit_inode()
1774 nfs_init_cinfo_from_inode(&cinfo, inode); in nfs_commit_inode()
1775 res = nfs_scan_commit(inode, &head, &cinfo); in nfs_commit_inode()
1779 error = nfs_generic_commit_list(inode, &head, how, &cinfo); in nfs_commit_inode()
1784 error = wait_on_bit_action(&NFS_I(inode)->flags, in nfs_commit_inode()
1791 nfs_commit_clear_lock(NFS_I(inode)); in nfs_commit_inode()
1799 __mark_inode_dirty(inode, I_DIRTY_DATASYNC); in nfs_commit_inode()
1803 static int nfs_commit_unstable_pages(struct inode *inode, struct writeback_control *wbc) in nfs_commit_unstable_pages() argument
1805 struct nfs_inode *nfsi = NFS_I(inode); in nfs_commit_unstable_pages()
1824 ret = nfs_commit_inode(inode, flags); in nfs_commit_unstable_pages()
1835 __mark_inode_dirty(inode, I_DIRTY_DATASYNC); in nfs_commit_unstable_pages()
1839 int nfs_write_inode(struct inode *inode, struct writeback_control *wbc) in nfs_write_inode() argument
1841 return nfs_commit_unstable_pages(inode, wbc); in nfs_write_inode()
1848 int nfs_wb_all(struct inode *inode) in nfs_wb_all() argument
1852 trace_nfs_writeback_inode_enter(inode); in nfs_wb_all()
1854 ret = filemap_write_and_wait(inode->i_mapping); in nfs_wb_all()
1857 ret = nfs_commit_inode(inode, FLUSH_SYNC); in nfs_wb_all()
1860 pnfs_sync_inode(inode, true); in nfs_wb_all()
1864 trace_nfs_writeback_inode_exit(inode, ret); in nfs_wb_all()
1869 int nfs_wb_page_cancel(struct inode *inode, struct page *page) in nfs_wb_page_cancel() argument
1897 int nfs_wb_page(struct inode *inode, struct page *page) in nfs_wb_page() argument
1909 trace_nfs_writeback_page_enter(inode); in nfs_wb_page()
1922 ret = nfs_commit_inode(inode, FLUSH_SYNC); in nfs_wb_page()
1927 trace_nfs_writeback_page_exit(inode, ret); in nfs_wb_page()