NFS: fix subtle change in COMMIT behavior
Recent work in the pgio layer made it possible for there to be more than one request per page. This caused a subtle change in commit behavior, because write.c:nfs_commit_unstable_pages compares the number of *pages* waiting for writeback against the number of requests on a commit list to choose when to send a COMMIT in a non-blocking flush. This is probably hard to hit in normal operation - you have to be using rsize/wsize < PAGE_SIZE, or pnfs with lots of boundaries that are not page aligned to have a noticeable change in behavior. Signed-off-by: Weston Andros Adamson <dros@primarydata.com> Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
This commit is contained in:

committed by
Trond Myklebust

parent
6a74c0c940
commit
cb1410c71e
@@ -49,7 +49,7 @@ __be32 nfs4_callback_getattr(struct cb_getattrargs *args,
|
||||
goto out_iput;
|
||||
res->size = i_size_read(inode);
|
||||
res->change_attr = delegation->change_attr;
|
||||
if (nfsi->npages != 0)
|
||||
if (nfsi->nrequests != 0)
|
||||
res->change_attr++;
|
||||
res->ctime = inode->i_ctime;
|
||||
res->mtime = inode->i_mtime;
|
||||
|
Reference in New Issue
Block a user