Lines Matching refs:cinfo
50 static void nfs_init_cinfo_from_inode(struct nfs_commit_info *cinfo,
751 struct nfs_commit_info cinfo; 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()
762 list_for_each_entry_safe(freq, t, &cinfo.mds->list, wb_list) { in nfs_page_search_commits_for_head_request_locked()
784 struct nfs_commit_info *cinfo) in nfs_request_add_commit_list_locked() argument
788 cinfo->mds->ncommit++; in nfs_request_add_commit_list_locked()
807 struct nfs_commit_info *cinfo) in nfs_request_add_commit_list() argument
809 spin_lock(cinfo->lock); in nfs_request_add_commit_list()
810 nfs_request_add_commit_list_locked(req, dst, cinfo); in nfs_request_add_commit_list()
811 spin_unlock(cinfo->lock); in nfs_request_add_commit_list()
812 nfs_mark_page_unstable(req->wb_page, cinfo); in nfs_request_add_commit_list()
829 struct nfs_commit_info *cinfo) in nfs_request_remove_commit_list() argument
834 cinfo->mds->ncommit--; in nfs_request_remove_commit_list()
838 static void nfs_init_cinfo_from_inode(struct nfs_commit_info *cinfo, in nfs_init_cinfo_from_inode() argument
841 cinfo->lock = &inode->i_lock; in nfs_init_cinfo_from_inode()
842 cinfo->mds = &NFS_I(inode)->commit_info; in nfs_init_cinfo_from_inode()
843 cinfo->ds = pnfs_get_ds_info(inode); in nfs_init_cinfo_from_inode()
844 cinfo->dreq = NULL; in nfs_init_cinfo_from_inode()
845 cinfo->completion_ops = &nfs_commit_completion_ops; in nfs_init_cinfo_from_inode()
848 void nfs_init_cinfo(struct nfs_commit_info *cinfo, in nfs_init_cinfo() argument
853 nfs_init_cinfo_from_dreq(cinfo, dreq); in nfs_init_cinfo()
855 nfs_init_cinfo_from_inode(cinfo, inode); in nfs_init_cinfo()
864 struct nfs_commit_info *cinfo, u32 ds_commit_idx) in nfs_mark_request_commit() argument
866 if (pnfs_mark_request_commit(req, lseg, cinfo, ds_commit_idx)) in nfs_mark_request_commit()
868 nfs_request_add_commit_list(req, &cinfo->mds->list, cinfo); in nfs_mark_request_commit()
885 struct nfs_commit_info cinfo; in nfs_clear_request_commit() local
887 nfs_init_cinfo_from_inode(&cinfo, inode); in nfs_clear_request_commit()
888 if (!pnfs_clear_request_commit(req, &cinfo)) { in nfs_clear_request_commit()
889 nfs_request_remove_commit_list(req, &cinfo); in nfs_clear_request_commit()
904 struct nfs_commit_info cinfo; in nfs_write_completion() local
909 nfs_init_cinfo_from_inode(&cinfo, hdr->inode); in nfs_write_completion()
923 nfs_mark_request_commit(req, hdr->lseg, &cinfo, in nfs_write_completion()
939 nfs_reqs_to_commit(struct nfs_commit_info *cinfo) in nfs_reqs_to_commit() argument
941 return cinfo->mds->ncommit; in nfs_reqs_to_commit()
947 struct nfs_commit_info *cinfo, int max) in nfs_scan_commit_list() argument
956 if (cond_resched_lock(cinfo->lock)) in nfs_scan_commit_list()
958 nfs_request_remove_commit_list(req, cinfo); in nfs_scan_commit_list()
961 if ((ret == max) && !cinfo->dreq) in nfs_scan_commit_list()
978 struct nfs_commit_info *cinfo) in nfs_scan_commit() argument
982 spin_lock(cinfo->lock); in nfs_scan_commit()
983 if (cinfo->mds->ncommit > 0) { in nfs_scan_commit()
986 ret = nfs_scan_commit_list(&cinfo->mds->list, dst, in nfs_scan_commit()
987 cinfo, max); in nfs_scan_commit()
988 ret += pnfs_scan_commit_lists(inode, cinfo, max - ret); in nfs_scan_commit()
990 spin_unlock(cinfo->lock); in nfs_scan_commit()
1620 struct nfs_commit_info *cinfo) in nfs_init_commit() argument
1637 data->completion_ops = cinfo->completion_ops; in nfs_init_commit()
1638 data->dreq = cinfo->dreq; in nfs_init_commit()
1653 struct nfs_commit_info *cinfo, in nfs_retry_commit() argument
1661 nfs_mark_request_commit(req, lseg, cinfo, ds_commit_idx); in nfs_retry_commit()
1662 if (!cinfo->dreq) in nfs_retry_commit()
1674 struct nfs_commit_info *cinfo) in nfs_commit_list() argument
1684 nfs_init_commit(data, head, NULL, cinfo); in nfs_commit_list()
1685 atomic_inc(&cinfo->mds->rpcs_out); in nfs_commit_list()
1689 nfs_retry_commit(head, NULL, cinfo, 0); in nfs_commit_list()
1690 cinfo->completion_ops->error_cleanup(NFS_I(inode)); in nfs_commit_list()
1712 struct nfs_commit_info cinfo; in nfs_commit_release_pages() local
1751 nfs_init_cinfo(&cinfo, data->inode, data->dreq); in nfs_commit_release_pages()
1752 if (atomic_dec_and_test(&cinfo.mds->rpcs_out)) in nfs_commit_release_pages()
1776 int how, struct nfs_commit_info *cinfo) in nfs_generic_commit_list() argument
1780 status = pnfs_commit_list(inode, head, how, cinfo); in nfs_generic_commit_list()
1782 status = nfs_commit_list(inode, head, how, cinfo); in nfs_generic_commit_list()
1789 struct nfs_commit_info cinfo; in nfs_commit_inode() local
1796 nfs_init_cinfo_from_inode(&cinfo, inode); in nfs_commit_inode()
1797 res = nfs_scan_commit(inode, &head, &cinfo); in nfs_commit_inode()
1801 error = nfs_generic_commit_list(inode, &head, how, &cinfo); in nfs_commit_inode()