Lines Matching refs:cinfo

62 static void nfs_clear_request_commit(struct nfs_commit_info *cinfo,
64 static void nfs_init_cinfo_from_inode(struct nfs_commit_info *cinfo,
506 void nfs_join_page_group(struct nfs_page *head, struct nfs_commit_info *cinfo, in nfs_join_page_group() argument
537 nfs_clear_request_commit(cinfo, subreq); in nfs_join_page_group()
570 struct nfs_commit_info cinfo; in nfs_lock_and_join_requests() local
573 nfs_init_cinfo_from_inode(&cinfo, inode); in nfs_lock_and_join_requests()
590 nfs_join_page_group(head, &cinfo, inode); in nfs_lock_and_join_requests()
832 struct nfs_commit_info cinfo; in nfs_page_search_commits_for_head_request_locked() local
835 nfs_init_cinfo_from_inode(&cinfo, inode); in nfs_page_search_commits_for_head_request_locked()
838 freq = pnfs_search_commit_reqs(inode, &cinfo, folio); in nfs_page_search_commits_for_head_request_locked()
843 list_for_each_entry_safe(freq, t, &cinfo.mds->list, wb_list) { in nfs_page_search_commits_for_head_request_locked()
866 struct nfs_commit_info *cinfo) in nfs_request_add_commit_list_locked() argument
870 atomic_long_inc(&cinfo->mds->ncommit); in nfs_request_add_commit_list_locked()
887 nfs_request_add_commit_list(struct nfs_page *req, struct nfs_commit_info *cinfo) in nfs_request_add_commit_list() argument
889 mutex_lock(&NFS_I(cinfo->inode)->commit_mutex); in nfs_request_add_commit_list()
890 nfs_request_add_commit_list_locked(req, &cinfo->mds->list, cinfo); in nfs_request_add_commit_list()
891 mutex_unlock(&NFS_I(cinfo->inode)->commit_mutex); in nfs_request_add_commit_list()
892 nfs_folio_mark_unstable(nfs_page_to_folio(req), cinfo); in nfs_request_add_commit_list()
909 struct nfs_commit_info *cinfo) in nfs_request_remove_commit_list() argument
914 atomic_long_dec(&cinfo->mds->ncommit); in nfs_request_remove_commit_list()
918 static void nfs_init_cinfo_from_inode(struct nfs_commit_info *cinfo, in nfs_init_cinfo_from_inode() argument
921 cinfo->inode = inode; in nfs_init_cinfo_from_inode()
922 cinfo->mds = &NFS_I(inode)->commit_info; in nfs_init_cinfo_from_inode()
923 cinfo->ds = pnfs_get_ds_info(inode); in nfs_init_cinfo_from_inode()
924 cinfo->dreq = NULL; in nfs_init_cinfo_from_inode()
925 cinfo->completion_ops = &nfs_commit_completion_ops; in nfs_init_cinfo_from_inode()
928 void nfs_init_cinfo(struct nfs_commit_info *cinfo, in nfs_init_cinfo() argument
933 nfs_init_cinfo_from_dreq(cinfo, dreq); in nfs_init_cinfo()
935 nfs_init_cinfo_from_inode(cinfo, inode); in nfs_init_cinfo()
944 struct nfs_commit_info *cinfo, u32 ds_commit_idx) in nfs_mark_request_commit() argument
946 if (pnfs_mark_request_commit(req, lseg, cinfo, ds_commit_idx)) in nfs_mark_request_commit()
948 nfs_request_add_commit_list(req, cinfo); in nfs_mark_request_commit()
963 static void nfs_clear_request_commit(struct nfs_commit_info *cinfo, in nfs_clear_request_commit() argument
971 if (!pnfs_clear_request_commit(req, cinfo)) { in nfs_clear_request_commit()
972 nfs_request_remove_commit_list(req, cinfo); in nfs_clear_request_commit()
993 struct nfs_commit_info cinfo; in nfs_write_completion() local
998 nfs_init_cinfo_from_inode(&cinfo, hdr->inode); in nfs_write_completion()
1015 nfs_mark_request_commit(req, hdr->lseg, &cinfo, in nfs_write_completion()
1031 nfs_reqs_to_commit(struct nfs_commit_info *cinfo) in nfs_reqs_to_commit() argument
1033 return atomic_long_read(&cinfo->mds->ncommit); in nfs_reqs_to_commit()
1039 struct nfs_commit_info *cinfo, int max) in nfs_scan_commit_list() argument
1050 nfs_request_remove_commit_list(req, cinfo); in nfs_scan_commit_list()
1054 if ((ret == max) && !cinfo->dreq) in nfs_scan_commit_list()
1073 struct nfs_commit_info *cinfo) in nfs_scan_commit() argument
1077 if (!atomic_long_read(&cinfo->mds->ncommit)) in nfs_scan_commit()
1079 mutex_lock(&NFS_I(cinfo->inode)->commit_mutex); in nfs_scan_commit()
1080 if (atomic_long_read(&cinfo->mds->ncommit) > 0) { in nfs_scan_commit()
1083 ret = nfs_scan_commit_list(&cinfo->mds->list, dst, in nfs_scan_commit()
1084 cinfo, max); in nfs_scan_commit()
1085 ret += pnfs_scan_commit_lists(inode, cinfo, max - ret); in nfs_scan_commit()
1087 mutex_unlock(&NFS_I(cinfo->inode)->commit_mutex); in nfs_scan_commit()
1656 static int wait_on_commit(struct nfs_mds_commit_info *cinfo) in wait_on_commit() argument
1658 return wait_var_event_killable(&cinfo->rpcs_out, in wait_on_commit()
1659 !atomic_read(&cinfo->rpcs_out)); in wait_on_commit()
1662 static void nfs_commit_begin(struct nfs_mds_commit_info *cinfo) in nfs_commit_begin() argument
1664 atomic_inc(&cinfo->rpcs_out); in nfs_commit_begin()
1667 bool nfs_commit_end(struct nfs_mds_commit_info *cinfo) in nfs_commit_end() argument
1669 if (atomic_dec_and_test(&cinfo->rpcs_out)) { in nfs_commit_end()
1670 wake_up_var(&cinfo->rpcs_out); in nfs_commit_end()
1743 struct nfs_commit_info *cinfo) in nfs_init_commit() argument
1766 data->completion_ops = cinfo->completion_ops; in nfs_init_commit()
1767 data->dreq = cinfo->dreq; in nfs_init_commit()
1777 nfs_commit_begin(cinfo->mds); in nfs_init_commit()
1783 struct nfs_commit_info *cinfo, in nfs_retry_commit() argument
1791 nfs_mark_request_commit(req, lseg, cinfo, ds_commit_idx); in nfs_retry_commit()
1798 static void nfs_commit_resched_write(struct nfs_commit_info *cinfo, in nfs_commit_resched_write() argument
1811 struct nfs_commit_info *cinfo) in nfs_commit_list() argument
1822 nfs_retry_commit(head, NULL, cinfo, -1); in nfs_commit_list()
1827 nfs_init_commit(data, head, NULL, cinfo); in nfs_commit_list()
1852 struct nfs_commit_info cinfo; in nfs_commit_release_pages() local
1900 nfs_init_cinfo(&cinfo, data->inode, data->dreq); in nfs_commit_release_pages()
1901 nfs_commit_end(cinfo.mds); in nfs_commit_release_pages()
1924 int how, struct nfs_commit_info *cinfo) in nfs_generic_commit_list() argument
1928 status = pnfs_commit_list(inode, head, how, cinfo); in nfs_generic_commit_list()
1930 status = nfs_commit_list(inode, head, how, cinfo); in nfs_generic_commit_list()
1938 struct nfs_commit_info cinfo; in __nfs_commit_inode() local
1943 nfs_init_cinfo_from_inode(&cinfo, inode); in __nfs_commit_inode()
1944 nfs_commit_begin(cinfo.mds); in __nfs_commit_inode()
1946 ret = nscan = nfs_scan_commit(inode, &head, &cinfo); in __nfs_commit_inode()
1949 ret = nfs_generic_commit_list(inode, &head, how, &cinfo); in __nfs_commit_inode()
1963 nfs_commit_end(cinfo.mds); in __nfs_commit_inode()
1966 return wait_on_commit(cinfo.mds); in __nfs_commit_inode()