diff options
Diffstat (limited to 'fs/nfs')
-rw-r--r-- | fs/nfs/write.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/fs/nfs/write.c b/fs/nfs/write.c index 9449b6835509..d6ad449041eb 100644 --- a/fs/nfs/write.c +++ b/fs/nfs/write.c | |||
@@ -653,8 +653,11 @@ static struct nfs_page * nfs_update_request(struct nfs_open_context* ctx, | |||
653 | spin_unlock(&nfsi->req_lock); | 653 | spin_unlock(&nfsi->req_lock); |
654 | error = nfs_wait_on_request(req); | 654 | error = nfs_wait_on_request(req); |
655 | nfs_release_request(req); | 655 | nfs_release_request(req); |
656 | if (error < 0) | 656 | if (error < 0) { |
657 | if (new) | ||
658 | nfs_release_request(new); | ||
657 | return ERR_PTR(error); | 659 | return ERR_PTR(error); |
660 | } | ||
658 | continue; | 661 | continue; |
659 | } | 662 | } |
660 | spin_unlock(&nfsi->req_lock); | 663 | spin_unlock(&nfsi->req_lock); |