| From c001c87a63aa2f35358e33eb05e45e4cbcb34f54 Mon Sep 17 00:00:00 2001 |
| From: Trond Myklebust <trond.myklebust@primarydata.com> |
| Date: Sun, 26 Jun 2016 12:39:49 -0400 |
| Subject: pNFS/flexfiles: Fix layoutcommit after a commit to DS |
| |
| From: Trond Myklebust <trond.myklebust@primarydata.com> |
| |
| commit c001c87a63aa2f35358e33eb05e45e4cbcb34f54 upstream. |
| |
| We should always do a layoutcommit after commit to DS, except if |
| the layout segment we're using has set FF_FLAGS_NO_LAYOUTCOMMIT. |
| |
| Fixes: d67ae825a59d ("pnfs/flexfiles: Add the FlexFile Layout Driver") |
| Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| fs/nfs/flexfilelayout/flexfilelayout.c | 3 +-- |
| 1 file changed, 1 insertion(+), 2 deletions(-) |
| |
| --- a/fs/nfs/flexfilelayout/flexfilelayout.c |
| +++ b/fs/nfs/flexfilelayout/flexfilelayout.c |
| @@ -1414,8 +1414,7 @@ static int ff_layout_commit_done_cb(stru |
| return -EAGAIN; |
| } |
| |
| - if (data->verf.committed == NFS_UNSTABLE |
| - && ff_layout_need_layoutcommit(data->lseg)) |
| + if (ff_layout_need_layoutcommit(data->lseg)) |
| pnfs_set_layoutcommit(data->inode, data->lseg, data->lwb); |
| |
| return 0; |