pNFS/flexfiles: Clean up calls to pnfs_set_layoutcommit()
Let's just have one place where we check ff_layout_need_layoutcommit(). Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
This commit is contained in:
parent
c001c87a63
commit
bc28e1c2e3
|
@ -1325,15 +1325,16 @@ ff_layout_need_layoutcommit(struct pnfs_layout_segment *lseg)
|
||||||
* we always send layoutcommit after DS writes.
|
* we always send layoutcommit after DS writes.
|
||||||
*/
|
*/
|
||||||
static void
|
static void
|
||||||
ff_layout_set_layoutcommit(struct nfs_pgio_header *hdr)
|
ff_layout_set_layoutcommit(struct inode *inode,
|
||||||
|
struct pnfs_layout_segment *lseg,
|
||||||
|
loff_t end_offset)
|
||||||
{
|
{
|
||||||
if (!ff_layout_need_layoutcommit(hdr->lseg))
|
if (!ff_layout_need_layoutcommit(lseg))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
pnfs_set_layoutcommit(hdr->inode, hdr->lseg,
|
pnfs_set_layoutcommit(inode, lseg, end_offset);
|
||||||
hdr->mds_offset + hdr->res.count);
|
dprintk("%s inode %lu pls_end_pos %llu\n", __func__, inode->i_ino,
|
||||||
dprintk("%s inode %lu pls_end_pos %lu\n", __func__, hdr->inode->i_ino,
|
(unsigned long long) NFS_I(inode)->layout->plh_lwb);
|
||||||
(unsigned long) NFS_I(hdr->inode)->layout->plh_lwb);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool
|
static bool
|
||||||
|
@ -1494,7 +1495,8 @@ static int ff_layout_write_done_cb(struct rpc_task *task,
|
||||||
|
|
||||||
if (hdr->res.verf->committed == NFS_FILE_SYNC ||
|
if (hdr->res.verf->committed == NFS_FILE_SYNC ||
|
||||||
hdr->res.verf->committed == NFS_DATA_SYNC)
|
hdr->res.verf->committed == NFS_DATA_SYNC)
|
||||||
ff_layout_set_layoutcommit(hdr);
|
ff_layout_set_layoutcommit(hdr->inode, hdr->lseg,
|
||||||
|
hdr->mds_offset + (loff_t)hdr->res.count);
|
||||||
|
|
||||||
/* zero out fattr since we don't care DS attr at all */
|
/* zero out fattr since we don't care DS attr at all */
|
||||||
hdr->fattr.valid = 0;
|
hdr->fattr.valid = 0;
|
||||||
|
@ -1530,8 +1532,7 @@ static int ff_layout_commit_done_cb(struct rpc_task *task,
|
||||||
return -EAGAIN;
|
return -EAGAIN;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ff_layout_need_layoutcommit(data->lseg))
|
ff_layout_set_layoutcommit(data->inode, data->lseg, data->lwb);
|
||||||
pnfs_set_layoutcommit(data->inode, data->lseg, data->lwb);
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue