cifs: bugfix for unreclaimed writeback pages in cifs_writev_requeue()
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / fs / cifs / cifssmb.c
index 00e12f2d626b92c97540950f8dad5fa70bb4d485..7353bc5d73d7cfcdba7125b8e83d783f639619ca 100644 (file)
@@ -1909,8 +1909,11 @@ cifs_writev_requeue(struct cifs_writedata *wdata)
        } while (rc == -EAGAIN);
 
        for (i = 0; i < wdata->nr_pages; i++) {
-               if (rc != 0)
+               if (rc != 0) {
                        SetPageError(wdata->pages[i]);
+                       end_page_writeback(wdata->pages[i]);
+                       page_cache_release(wdata->pages[i]);
+               }
                unlock_page(wdata->pages[i]);
        }