Lines Matching refs:pgio
2468 pnfs_generic_pg_check_layout(struct nfs_pageio_descriptor *pgio) in pnfs_generic_pg_check_layout() argument
2470 if (pgio->pg_lseg == NULL || in pnfs_generic_pg_check_layout()
2471 test_bit(NFS_LSEG_VALID, &pgio->pg_lseg->pls_flags)) in pnfs_generic_pg_check_layout()
2473 pnfs_put_lseg(pgio->pg_lseg); in pnfs_generic_pg_check_layout()
2474 pgio->pg_lseg = NULL; in pnfs_generic_pg_check_layout()
2483 pnfs_generic_pg_check_range(struct nfs_pageio_descriptor *pgio, struct nfs_page *req) in pnfs_generic_pg_check_range() argument
2485 if (pgio->pg_lseg && !pnfs_lseg_request_intersecting(pgio->pg_lseg, req)) { in pnfs_generic_pg_check_range()
2486 pnfs_put_lseg(pgio->pg_lseg); in pnfs_generic_pg_check_range()
2487 pgio->pg_lseg = NULL; in pnfs_generic_pg_check_range()
2492 pnfs_generic_pg_init_read(struct nfs_pageio_descriptor *pgio, struct nfs_page *req) in pnfs_generic_pg_init_read() argument
2496 pnfs_generic_pg_check_layout(pgio); in pnfs_generic_pg_init_read()
2497 pnfs_generic_pg_check_range(pgio, req); in pnfs_generic_pg_init_read()
2498 if (pgio->pg_lseg == NULL) { in pnfs_generic_pg_init_read()
2499 if (pgio->pg_dreq == NULL) in pnfs_generic_pg_init_read()
2500 rd_size = i_size_read(pgio->pg_inode) - req_offset(req); in pnfs_generic_pg_init_read()
2502 rd_size = nfs_dreq_bytes_left(pgio->pg_dreq); in pnfs_generic_pg_init_read()
2504 pgio->pg_lseg = pnfs_update_layout(pgio->pg_inode, in pnfs_generic_pg_init_read()
2511 if (IS_ERR(pgio->pg_lseg)) { in pnfs_generic_pg_init_read()
2512 pgio->pg_error = PTR_ERR(pgio->pg_lseg); in pnfs_generic_pg_init_read()
2513 pgio->pg_lseg = NULL; in pnfs_generic_pg_init_read()
2518 if (pgio->pg_lseg == NULL) in pnfs_generic_pg_init_read()
2519 nfs_pageio_reset_read_mds(pgio); in pnfs_generic_pg_init_read()
2525 pnfs_generic_pg_init_write(struct nfs_pageio_descriptor *pgio, in pnfs_generic_pg_init_write() argument
2528 pnfs_generic_pg_check_layout(pgio); in pnfs_generic_pg_init_write()
2529 pnfs_generic_pg_check_range(pgio, req); in pnfs_generic_pg_init_write()
2530 if (pgio->pg_lseg == NULL) { in pnfs_generic_pg_init_write()
2531 pgio->pg_lseg = pnfs_update_layout(pgio->pg_inode, in pnfs_generic_pg_init_write()
2538 if (IS_ERR(pgio->pg_lseg)) { in pnfs_generic_pg_init_write()
2539 pgio->pg_error = PTR_ERR(pgio->pg_lseg); in pnfs_generic_pg_init_write()
2540 pgio->pg_lseg = NULL; in pnfs_generic_pg_init_write()
2545 if (pgio->pg_lseg == NULL) in pnfs_generic_pg_init_write()
2546 nfs_pageio_reset_write_mds(pgio); in pnfs_generic_pg_init_write()
2565 pnfs_generic_pg_test(struct nfs_pageio_descriptor *pgio, in pnfs_generic_pg_test() argument
2571 size = nfs_generic_pg_test(pgio, prev, req); in pnfs_generic_pg_test()
2586 if (pgio->pg_lseg) { in pnfs_generic_pg_test()
2587 seg_end = pnfs_end_offset(pgio->pg_lseg->pls_range.offset, in pnfs_generic_pg_test()
2588 pgio->pg_lseg->pls_range.length); in pnfs_generic_pg_test()
2608 struct nfs_pageio_descriptor pgio; in pnfs_write_done_resend_to_mds() local
2611 nfs_pageio_init_write(&pgio, hdr->inode, FLUSH_STABLE, true, in pnfs_write_done_resend_to_mds()
2614 return nfs_pageio_resend(&pgio, hdr); in pnfs_write_done_resend_to_mds()
2737 struct nfs_pageio_descriptor pgio; in pnfs_read_done_resend_to_mds() local
2740 nfs_pageio_init_read(&pgio, hdr->inode, true, hdr->completion_ops); in pnfs_read_done_resend_to_mds()
2741 return nfs_pageio_resend(&pgio, hdr); in pnfs_read_done_resend_to_mds()
2811 struct nfs_pageio_descriptor pgio; in pnfs_read_resend_pnfs() local
2818 nfs_pageio_init_read(&pgio, hdr->inode, false, in pnfs_read_resend_pnfs()
2820 hdr->task.tk_status = nfs_pageio_resend(&pgio, hdr); in pnfs_read_resend_pnfs()