/linux-4.1.27/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 | 868 static int nfs_pageio_setup_mirroring(struct nfs_pageio_descriptor *pgio, in nfs_pageio_setup_mirroring() argument 873 if (!pgio->pg_ops->pg_get_mirror_count) in nfs_pageio_setup_mirroring() 876 mirror_count = pgio->pg_ops->pg_get_mirror_count(pgio, req); in nfs_pageio_setup_mirroring() 881 if (WARN_ON_ONCE(!pgio->pg_mirrors_dynamic)) in nfs_pageio_setup_mirroring() 884 pgio->pg_mirror_count = mirror_count; in nfs_pageio_setup_mirroring() 892 void nfs_pageio_stop_mirroring(struct nfs_pageio_descriptor *pgio) in nfs_pageio_stop_mirroring() argument 894 pgio->pg_mirror_count = 1; in nfs_pageio_stop_mirroring() 895 pgio->pg_mirror_idx = 0; in nfs_pageio_stop_mirroring() 898 static void nfs_pageio_cleanup_mirroring(struct nfs_pageio_descriptor *pgio) in nfs_pageio_cleanup_mirroring() argument 900 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() 577 …_do_writepage(struct page *page, struct writeback_control *wbc, struct nfs_pageio_descriptor *pgio) in nfs_do_writepage() argument 585 nfs_pageio_cond_complete(pgio, page_file_index(page)); in nfs_do_writepage() 586 ret = nfs_page_async_flush(pgio, page, wbc->sync_mode == WB_SYNC_NONE); in nfs_do_writepage() 599 struct nfs_pageio_descriptor pgio; in nfs_writepage_locked() local 602 nfs_pageio_init_write(&pgio, page->mapping->host, 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 | 1714 pnfs_generic_pg_init_read(struct nfs_pageio_descriptor *pgio, struct nfs_page *req) in pnfs_generic_pg_init_read() argument 1718 if (pgio->pg_lseg == NULL) { in pnfs_generic_pg_init_read() 1719 if (pgio->pg_dreq == NULL) in pnfs_generic_pg_init_read() 1720 rd_size = i_size_read(pgio->pg_inode) - req_offset(req); in pnfs_generic_pg_init_read() 1722 rd_size = nfs_dreq_bytes_left(pgio->pg_dreq); in pnfs_generic_pg_init_read() 1724 pgio->pg_lseg = pnfs_update_layout(pgio->pg_inode, in pnfs_generic_pg_init_read() 1732 if (pgio->pg_lseg == NULL) in pnfs_generic_pg_init_read() 1733 nfs_pageio_reset_read_mds(pgio); in pnfs_generic_pg_init_read() 1739 pnfs_generic_pg_init_write(struct nfs_pageio_descriptor *pgio, in pnfs_generic_pg_init_write() argument 1742 if (pgio->pg_lseg == NULL) in pnfs_generic_pg_init_write() [all …]
|
D | internal.h | 419 extern void nfs_pageio_init_read(struct nfs_pageio_descriptor *pgio, 423 extern void nfs_pageio_reset_read_mds(struct nfs_pageio_descriptor *pgio); 436 extern void nfs_pageio_init_write(struct nfs_pageio_descriptor *pgio, 439 extern void nfs_pageio_reset_write_mds(struct nfs_pageio_descriptor *pgio); 479 void nfs_pageio_stop_mirroring(struct nfs_pageio_descriptor *pgio);
|
D | direct.c | 289 struct nfs_pageio_descriptor *pgio, in nfs_direct_setup_mirroring() argument 294 if (pgio->pg_ops->pg_get_mirror_count) in nfs_direct_setup_mirroring() 295 mirror_count = pgio->pg_ops->pg_get_mirror_count(pgio, req); in nfs_direct_setup_mirroring()
|
D | pnfs.h | 238 void pnfs_generic_pg_init_write(struct nfs_pageio_descriptor *pgio, 242 size_t pnfs_generic_pg_test(struct nfs_pageio_descriptor *pgio,
|
/linux-4.1.27/fs/nfs/objlayout/ |
D | objio_osd.c | 537 static size_t objio_pg_test(struct nfs_pageio_descriptor *pgio, in objio_pg_test() argument 540 struct nfs_pgio_mirror *mirror = nfs_pgio_current_mirror(pgio); in objio_pg_test() 543 size = pnfs_generic_pg_test(pgio, prev, req); in objio_pg_test() 546 (unsigned long)pgio->pg_layout_private) in objio_pg_test() 552 static void objio_init_read(struct nfs_pageio_descriptor *pgio, struct nfs_page *req) in objio_init_read() argument 554 pnfs_generic_pg_init_read(pgio, req); in objio_init_read() 555 if (unlikely(pgio->pg_lseg == NULL)) in objio_init_read() 558 pgio->pg_layout_private = (void *) in objio_init_read() 559 OBJIO_LSEG(pgio->pg_lseg)->layout.max_io_length; in objio_init_read() 582 static void objio_init_write(struct nfs_pageio_descriptor *pgio, struct nfs_page *req) in objio_init_write() argument [all …]
|
/linux-4.1.27/fs/nfs/flexfilelayout/ |
D | flexfilelayout.c | 465 ff_layout_choose_best_ds_for_read(struct nfs_pageio_descriptor *pgio, in ff_layout_choose_best_ds_for_read() argument 472 fls = FF_LAYOUT_LSEG(pgio->pg_lseg); in ff_layout_choose_best_ds_for_read() 475 ds = nfs4_ff_layout_prepare_ds(pgio->pg_lseg, idx, false); in ff_layout_choose_best_ds_for_read() 486 ff_layout_pg_init_read(struct nfs_pageio_descriptor *pgio, in ff_layout_pg_init_read() argument 495 if (!pgio->pg_lseg) in ff_layout_pg_init_read() 496 pgio->pg_lseg = pnfs_update_layout(pgio->pg_inode, in ff_layout_pg_init_read() 503 if (pgio->pg_lseg == NULL) in ff_layout_pg_init_read() 506 ds = ff_layout_choose_best_ds_for_read(pgio, &ds_idx); in ff_layout_pg_init_read() 509 mirror = FF_LAYOUT_COMP(pgio->pg_lseg, ds_idx); in ff_layout_pg_init_read() 511 pgio->pg_mirror_idx = ds_idx; in ff_layout_pg_init_read() [all …]
|
/linux-4.1.27/fs/nfs/blocklayout/ |
D | blocklayout.c | 750 is_aligned_req(struct nfs_pageio_descriptor *pgio, in is_aligned_req() argument 757 if (pgio->pg_dreq == NULL) in is_aligned_req() 766 if (req_offset(req) + req->wb_bytes == i_size_read(pgio->pg_inode)) { in is_aligned_req() 781 bl_pg_init_read(struct nfs_pageio_descriptor *pgio, struct nfs_page *req) in bl_pg_init_read() argument 783 if (!is_aligned_req(pgio, req, SECTOR_SIZE)) { in bl_pg_init_read() 784 nfs_pageio_reset_read_mds(pgio); in bl_pg_init_read() 788 pnfs_generic_pg_init_read(pgio, req); in bl_pg_init_read() 796 bl_pg_test_read(struct nfs_pageio_descriptor *pgio, struct nfs_page *prev, in bl_pg_test_read() argument 799 if (!is_aligned_req(pgio, req, SECTOR_SIZE)) in bl_pg_test_read() 801 return pnfs_generic_pg_test(pgio, prev, req); in bl_pg_test_read() [all …]
|
/linux-4.1.27/fs/nfs/filelayout/ |
D | filelayout.c | 846 filelayout_pg_test(struct nfs_pageio_descriptor *pgio, struct nfs_page *prev, in filelayout_pg_test() argument 852 u64 segment_offset = pgio->pg_lseg->pls_range.offset; in filelayout_pg_test() 853 u32 stripe_unit = FILELAYOUT_LSEG(pgio->pg_lseg)->stripe_unit; in filelayout_pg_test() 856 size = pnfs_generic_pg_test(pgio, prev, req); in filelayout_pg_test() 882 filelayout_pg_init_read(struct nfs_pageio_descriptor *pgio, in filelayout_pg_init_read() argument 885 if (!pgio->pg_lseg) in filelayout_pg_init_read() 886 pgio->pg_lseg = pnfs_update_layout(pgio->pg_inode, in filelayout_pg_init_read() 893 if (pgio->pg_lseg == NULL) in filelayout_pg_init_read() 894 nfs_pageio_reset_read_mds(pgio); in filelayout_pg_init_read() 898 filelayout_pg_init_write(struct nfs_pageio_descriptor *pgio, in filelayout_pg_init_write() argument [all …]
|