|
@@ -1784,7 +1784,8 @@ static void nfs_commit_release_pages(struct nfs_commit_data *data)
|
|
(long long)req_offset(req));
|
|
(long long)req_offset(req));
|
|
if (status < 0) {
|
|
if (status < 0) {
|
|
nfs_context_set_write_error(req->wb_context, status);
|
|
nfs_context_set_write_error(req->wb_context, status);
|
|
- nfs_inode_remove_request(req);
|
|
|
|
|
|
+ if (req->wb_page)
|
|
|
|
+ nfs_inode_remove_request(req);
|
|
dprintk_cont(", error = %d\n", status);
|
|
dprintk_cont(", error = %d\n", status);
|
|
goto next;
|
|
goto next;
|
|
}
|
|
}
|
|
@@ -1793,7 +1794,8 @@ static void nfs_commit_release_pages(struct nfs_commit_data *data)
|
|
* returned by the server against all stored verfs. */
|
|
* returned by the server against all stored verfs. */
|
|
if (!nfs_write_verifier_cmp(&req->wb_verf, &data->verf.verifier)) {
|
|
if (!nfs_write_verifier_cmp(&req->wb_verf, &data->verf.verifier)) {
|
|
/* We have a match */
|
|
/* We have a match */
|
|
- nfs_inode_remove_request(req);
|
|
|
|
|
|
+ if (req->wb_page)
|
|
|
|
+ nfs_inode_remove_request(req);
|
|
dprintk_cont(" OK\n");
|
|
dprintk_cont(" OK\n");
|
|
goto next;
|
|
goto next;
|
|
}
|
|
}
|