On Tue, 2012-03-20 at 12:25 -0400, Fred Isaman wrote: > The decrement is handled by each call to nfs_request_remove_commit_list, > no need to do it again in nfs_scan_commit. > > Signed-off-by: Fred Isaman <iisaman@xxxxxxxxxx> > --- > fs/nfs/write.c | 5 +---- > 1 files changed, 1 insertions(+), 4 deletions(-) > > diff --git a/fs/nfs/write.c b/fs/nfs/write.c > index 0de19f4..e39ddfd 100644 > --- a/fs/nfs/write.c > +++ b/fs/nfs/write.c > @@ -595,12 +595,9 @@ nfs_scan_commit(struct inode *inode, struct list_head *dst) > spin_lock(&inode->i_lock); > if (nfsi->ncommit > 0) { > const int max = INT_MAX; > - int pnfs_ret; > > ret = nfs_scan_commit_list(&nfsi->commit_list, dst, max); > - pnfs_ret = pnfs_scan_commit_lists(inode, max - ret); > - ret += pnfs_ret; No! If we've scanned pNFS pages to commit, then we need to report this to nfs_commit_inode. Otherwise it will skip sending the RPC calls. > - nfsi->ncommit -= ret; ^^^^^^^^^^^^^^^^^^^^^^ I agree with this... I forgot to remove it. > + pnfs_scan_commit_lists(inode, max - ret); > } > spin_unlock(&inode->i_lock); > return ret; -- Trond Myklebust Linux NFS client maintainer NetApp Trond.Myklebust@xxxxxxxxxx www.netapp.com ��.n��������+%������w��{.n�����{��w���jg��������ݢj����G�������j:+v���w�m������w�������h�����٥