Lines Matching refs:pgio
800 is_aligned_req(struct nfs_pageio_descriptor *pgio, in is_aligned_req() argument
807 if (pgio->pg_dreq == NULL) in is_aligned_req()
817 (req_offset(req) + req->wb_bytes == i_size_read(pgio->pg_inode))) { in is_aligned_req()
832 bl_pg_init_read(struct nfs_pageio_descriptor *pgio, struct nfs_page *req) in bl_pg_init_read() argument
834 if (!is_aligned_req(pgio, req, SECTOR_SIZE, false)) { in bl_pg_init_read()
835 nfs_pageio_reset_read_mds(pgio); in bl_pg_init_read()
839 pnfs_generic_pg_init_read(pgio, req); in bl_pg_init_read()
841 if (pgio->pg_lseg && in bl_pg_init_read()
842 test_bit(NFS_LSEG_UNAVAILABLE, &pgio->pg_lseg->pls_flags)) { in bl_pg_init_read()
843 pnfs_error_mark_layout_for_return(pgio->pg_inode, pgio->pg_lseg); in bl_pg_init_read()
844 pnfs_set_lo_fail(pgio->pg_lseg); in bl_pg_init_read()
845 nfs_pageio_reset_read_mds(pgio); in bl_pg_init_read()
854 bl_pg_test_read(struct nfs_pageio_descriptor *pgio, struct nfs_page *prev, in bl_pg_test_read() argument
857 if (!is_aligned_req(pgio, req, SECTOR_SIZE, false)) in bl_pg_test_read()
859 return pnfs_generic_pg_test(pgio, prev, req); in bl_pg_test_read()
886 bl_pg_init_write(struct nfs_pageio_descriptor *pgio, struct nfs_page *req) in bl_pg_init_write() argument
890 if (!is_aligned_req(pgio, req, PAGE_SIZE, true)) { in bl_pg_init_write()
891 nfs_pageio_reset_write_mds(pgio); in bl_pg_init_write()
895 if (pgio->pg_dreq == NULL) in bl_pg_init_write()
896 wb_size = pnfs_num_cont_bytes(pgio->pg_inode, in bl_pg_init_write()
899 wb_size = nfs_dreq_bytes_left(pgio->pg_dreq); in bl_pg_init_write()
901 pnfs_generic_pg_init_write(pgio, req, wb_size); in bl_pg_init_write()
903 if (pgio->pg_lseg && in bl_pg_init_write()
904 test_bit(NFS_LSEG_UNAVAILABLE, &pgio->pg_lseg->pls_flags)) { in bl_pg_init_write()
906 pnfs_error_mark_layout_for_return(pgio->pg_inode, pgio->pg_lseg); in bl_pg_init_write()
907 pnfs_set_lo_fail(pgio->pg_lseg); in bl_pg_init_write()
908 nfs_pageio_reset_write_mds(pgio); in bl_pg_init_write()
917 bl_pg_test_write(struct nfs_pageio_descriptor *pgio, struct nfs_page *prev, in bl_pg_test_write() argument
920 if (!is_aligned_req(pgio, req, PAGE_SIZE, true)) in bl_pg_test_write()
922 return pnfs_generic_pg_test(pgio, prev, req); in bl_pg_test_write()