diff options
-rw-r--r-- | fs/nfs/write.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/fs/nfs/write.c b/fs/nfs/write.c index e75b056f46f4..abb2c8a3be42 100644 --- a/fs/nfs/write.c +++ b/fs/nfs/write.c | |||
@@ -1784,7 +1784,8 @@ static void nfs_commit_release_pages(struct nfs_commit_data *data) | |||
1784 | (long long)req_offset(req)); | 1784 | (long long)req_offset(req)); |
1785 | if (status < 0) { | 1785 | if (status < 0) { |
1786 | nfs_context_set_write_error(req->wb_context, status); | 1786 | nfs_context_set_write_error(req->wb_context, status); |
1787 | nfs_inode_remove_request(req); | 1787 | if (req->wb_page) |
1788 | nfs_inode_remove_request(req); | ||
1788 | dprintk_cont(", error = %d\n", status); | 1789 | dprintk_cont(", error = %d\n", status); |
1789 | goto next; | 1790 | goto next; |
1790 | } | 1791 | } |
@@ -1793,7 +1794,8 @@ static void nfs_commit_release_pages(struct nfs_commit_data *data) | |||
1793 | * returned by the server against all stored verfs. */ | 1794 | * returned by the server against all stored verfs. */ |
1794 | if (!nfs_write_verifier_cmp(&req->wb_verf, &data->verf.verifier)) { | 1795 | if (!nfs_write_verifier_cmp(&req->wb_verf, &data->verf.verifier)) { |
1795 | /* We have a match */ | 1796 | /* We have a match */ |
1796 | nfs_inode_remove_request(req); | 1797 | if (req->wb_page) |
1798 | nfs_inode_remove_request(req); | ||
1797 | dprintk_cont(" OK\n"); | 1799 | dprintk_cont(" OK\n"); |
1798 | goto next; | 1800 | goto next; |
1799 | } | 1801 | } |