diff --git a/fs/cifs/file.c b/fs/cifs/file.c index a56738244f3a99e83b791a1fc6df7da0f109881d..e914f4f5cc83d03bf73a7ef71d44e0b38eb17f07 100644 --- a/fs/cifs/file.c +++ b/fs/cifs/file.c @@ -2982,6 +2982,9 @@ cifs_write_from_iter(loff_t offset, size_t len, struct iov_iter *from, cifs_uncached_writev_complete); if (!wdata) { rc = -ENOMEM; + for (i = 0; i < nr_pages; i++) + put_page(pagevec[i]); + kvfree(pagevec); add_credits_and_wake_if(server, credits, 0); break; }