Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 602c4cd4 authored by Tom Haynes's avatar Tom Haynes Committed by Anna Schumaker
Browse files

nfs/flexfiles: Use the layout segment for reading unless it a IOMODE_RW and reading is disabled

parent fb1084e3
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -830,7 +830,8 @@ ff_layout_pg_init_read(struct nfs_pageio_descriptor *pgio,
	int ds_idx;

	/* Use full layout for now */
	if (!pgio->pg_lseg) {
	if (!pgio->pg_lseg || ff_layout_avoid_read_on_rw(pgio->pg_lseg)) {
		pnfs_put_lseg(pgio->pg_lseg);
		pgio->pg_lseg = pnfs_update_layout(pgio->pg_inode,
						   req->wb_context,
						   0,
@@ -840,9 +841,9 @@ ff_layout_pg_init_read(struct nfs_pageio_descriptor *pgio,
		if (IS_ERR(pgio->pg_lseg)) {
			pgio->pg_error = PTR_ERR(pgio->pg_lseg);
			pgio->pg_lseg = NULL;
			return;
		}
	}

	/* If no lseg, fall back to read through mds */
	if (pgio->pg_lseg == NULL)
		goto out_mds;