/linux-4.4.14/fs/nfs/ |
D | read.c | 55 void nfs_pageio_init_read(struct nfs_pageio_descriptor *pgio, in nfs_pageio_init_read() argument 66 nfs_pageio_init(pgio, inode, pg_ops, compl_ops, &nfs_rw_read_ops, in nfs_pageio_init_read() 71 void nfs_pageio_reset_read_mds(struct nfs_pageio_descriptor *pgio) in nfs_pageio_reset_read_mds() argument 75 if (pgio->pg_ops && pgio->pg_ops->pg_cleanup) in nfs_pageio_reset_read_mds() 76 pgio->pg_ops->pg_cleanup(pgio); in nfs_pageio_reset_read_mds() 78 pgio->pg_ops = &nfs_pgio_rw_ops; in nfs_pageio_reset_read_mds() 81 WARN_ON_ONCE(pgio->pg_mirror_count != 1); in nfs_pageio_reset_read_mds() 83 mirror = &pgio->pg_mirrors[0]; in nfs_pageio_reset_read_mds() 84 mirror->pg_bsize = NFS_SERVER(pgio->pg_inode)->rsize; in nfs_pageio_reset_read_mds() 93 struct nfs_pageio_descriptor pgio; in nfs_readpage_async() local [all …]
|
D | pagelist.c | 867 static int nfs_pageio_setup_mirroring(struct nfs_pageio_descriptor *pgio, in nfs_pageio_setup_mirroring() argument 872 if (!pgio->pg_ops->pg_get_mirror_count) in nfs_pageio_setup_mirroring() 875 mirror_count = pgio->pg_ops->pg_get_mirror_count(pgio, req); in nfs_pageio_setup_mirroring() 880 if (WARN_ON_ONCE(!pgio->pg_mirrors_dynamic)) in nfs_pageio_setup_mirroring() 883 pgio->pg_mirror_count = mirror_count; in nfs_pageio_setup_mirroring() 891 void nfs_pageio_stop_mirroring(struct nfs_pageio_descriptor *pgio) in nfs_pageio_stop_mirroring() argument 893 pgio->pg_mirror_count = 1; in nfs_pageio_stop_mirroring() 894 pgio->pg_mirror_idx = 0; in nfs_pageio_stop_mirroring() 897 static void nfs_pageio_cleanup_mirroring(struct nfs_pageio_descriptor *pgio) in nfs_pageio_cleanup_mirroring() argument 899 pgio->pg_mirror_count = 1; in nfs_pageio_cleanup_mirroring() [all …]
|
D | write.c | 552 static int nfs_page_async_flush(struct nfs_pageio_descriptor *pgio, in nfs_page_async_flush() argument 569 if (!nfs_pageio_add_request(pgio, req)) { in nfs_page_async_flush() 571 ret = pgio->pg_error; in nfs_page_async_flush() 579 …_do_writepage(struct page *page, struct writeback_control *wbc, struct nfs_pageio_descriptor *pgio) in nfs_do_writepage() argument 583 nfs_pageio_cond_complete(pgio, page_file_index(page)); in nfs_do_writepage() 584 ret = nfs_page_async_flush(pgio, page, wbc->sync_mode == WB_SYNC_NONE); in nfs_do_writepage() 597 struct nfs_pageio_descriptor pgio; in nfs_writepage_locked() local 602 nfs_pageio_init_write(&pgio, inode, wb_priority(wbc), in nfs_writepage_locked() 604 err = nfs_do_writepage(page, wbc, &pgio); in nfs_writepage_locked() 605 nfs_pageio_complete(&pgio); in nfs_writepage_locked() [all …]
|
D | pnfs.c | 1789 pnfs_generic_pg_init_read(struct nfs_pageio_descriptor *pgio, struct nfs_page *req) in pnfs_generic_pg_init_read() argument 1793 if (pgio->pg_lseg == NULL) { in pnfs_generic_pg_init_read() 1794 if (pgio->pg_dreq == NULL) in pnfs_generic_pg_init_read() 1795 rd_size = i_size_read(pgio->pg_inode) - req_offset(req); in pnfs_generic_pg_init_read() 1797 rd_size = nfs_dreq_bytes_left(pgio->pg_dreq); in pnfs_generic_pg_init_read() 1799 pgio->pg_lseg = pnfs_update_layout(pgio->pg_inode, in pnfs_generic_pg_init_read() 1807 if (pgio->pg_lseg == NULL) in pnfs_generic_pg_init_read() 1808 nfs_pageio_reset_read_mds(pgio); in pnfs_generic_pg_init_read() 1814 pnfs_generic_pg_init_write(struct nfs_pageio_descriptor *pgio, in pnfs_generic_pg_init_write() argument 1817 if (pgio->pg_lseg == NULL) in pnfs_generic_pg_init_write() [all …]
|
D | internal.h | 435 extern void nfs_pageio_init_read(struct nfs_pageio_descriptor *pgio, 439 extern void nfs_pageio_reset_read_mds(struct nfs_pageio_descriptor *pgio); 452 extern void nfs_pageio_init_write(struct nfs_pageio_descriptor *pgio, 455 extern void nfs_pageio_reset_write_mds(struct nfs_pageio_descriptor *pgio); 498 void nfs_pageio_stop_mirroring(struct nfs_pageio_descriptor *pgio);
|
D | direct.c | 292 struct nfs_pageio_descriptor *pgio, in nfs_direct_setup_mirroring() argument 297 if (pgio->pg_ops->pg_get_mirror_count) in nfs_direct_setup_mirroring() 298 mirror_count = pgio->pg_ops->pg_get_mirror_count(pgio, req); in nfs_direct_setup_mirroring()
|
D | pnfs.h | 242 void pnfs_generic_pg_init_write(struct nfs_pageio_descriptor *pgio, 246 size_t pnfs_generic_pg_test(struct nfs_pageio_descriptor *pgio,
|
/linux-4.4.14/fs/nfs/objlayout/ |
D | objio_osd.c | 534 static size_t objio_pg_test(struct nfs_pageio_descriptor *pgio, in objio_pg_test() argument 537 struct nfs_pgio_mirror *mirror = nfs_pgio_current_mirror(pgio); in objio_pg_test() 540 size = pnfs_generic_pg_test(pgio, prev, req); in objio_pg_test() 543 (unsigned long)pgio->pg_layout_private) in objio_pg_test() 549 static void objio_init_read(struct nfs_pageio_descriptor *pgio, struct nfs_page *req) in objio_init_read() argument 551 pnfs_generic_pg_init_read(pgio, req); in objio_init_read() 552 if (unlikely(pgio->pg_lseg == NULL)) in objio_init_read() 555 pgio->pg_layout_private = (void *) in objio_init_read() 556 OBJIO_LSEG(pgio->pg_lseg)->layout.max_io_length; in objio_init_read() 579 static void objio_init_write(struct nfs_pageio_descriptor *pgio, struct nfs_page *req) in objio_init_write() argument [all …]
|
/linux-4.4.14/fs/nfs/blocklayout/ |
D | blocklayout.c | 745 is_aligned_req(struct nfs_pageio_descriptor *pgio, in is_aligned_req() argument 752 if (pgio->pg_dreq == NULL) in is_aligned_req() 761 if (req_offset(req) + req->wb_bytes == i_size_read(pgio->pg_inode)) { in is_aligned_req() 776 bl_pg_init_read(struct nfs_pageio_descriptor *pgio, struct nfs_page *req) in bl_pg_init_read() argument 778 if (!is_aligned_req(pgio, req, SECTOR_SIZE)) { in bl_pg_init_read() 779 nfs_pageio_reset_read_mds(pgio); in bl_pg_init_read() 783 pnfs_generic_pg_init_read(pgio, req); in bl_pg_init_read() 791 bl_pg_test_read(struct nfs_pageio_descriptor *pgio, struct nfs_page *prev, in bl_pg_test_read() argument 794 if (!is_aligned_req(pgio, req, SECTOR_SIZE)) in bl_pg_test_read() 796 return pnfs_generic_pg_test(pgio, prev, req); in bl_pg_test_read() [all …]
|
/linux-4.4.14/fs/nfs/filelayout/ |
D | filelayout.c | 847 filelayout_pg_test(struct nfs_pageio_descriptor *pgio, struct nfs_page *prev, in filelayout_pg_test() argument 853 u64 segment_offset = pgio->pg_lseg->pls_range.offset; in filelayout_pg_test() 854 u32 stripe_unit = FILELAYOUT_LSEG(pgio->pg_lseg)->stripe_unit; in filelayout_pg_test() 857 size = pnfs_generic_pg_test(pgio, prev, req); in filelayout_pg_test() 883 filelayout_pg_init_read(struct nfs_pageio_descriptor *pgio, in filelayout_pg_init_read() argument 886 if (!pgio->pg_lseg) in filelayout_pg_init_read() 887 pgio->pg_lseg = pnfs_update_layout(pgio->pg_inode, in filelayout_pg_init_read() 894 if (pgio->pg_lseg == NULL) in filelayout_pg_init_read() 895 nfs_pageio_reset_read_mds(pgio); in filelayout_pg_init_read() 899 filelayout_pg_init_write(struct nfs_pageio_descriptor *pgio, in filelayout_pg_init_write() argument [all …]
|
/linux-4.4.14/fs/nfs/flexfilelayout/ |
D | flexfilelayout.c | 779 ff_layout_pg_init_read(struct nfs_pageio_descriptor *pgio, in ff_layout_pg_init_read() argument 788 if (!pgio->pg_lseg) in ff_layout_pg_init_read() 789 pgio->pg_lseg = pnfs_update_layout(pgio->pg_inode, in ff_layout_pg_init_read() 796 if (pgio->pg_lseg == NULL) in ff_layout_pg_init_read() 799 ds = ff_layout_choose_best_ds_for_read(pgio->pg_lseg, 0, &ds_idx); in ff_layout_pg_init_read() 802 mirror = FF_LAYOUT_COMP(pgio->pg_lseg, ds_idx); in ff_layout_pg_init_read() 804 pgio->pg_mirror_idx = ds_idx; in ff_layout_pg_init_read() 807 pgm = &pgio->pg_mirrors[0]; in ff_layout_pg_init_read() 812 pnfs_put_lseg(pgio->pg_lseg); in ff_layout_pg_init_read() 813 pgio->pg_lseg = NULL; in ff_layout_pg_init_read() [all …]
|