[PATCH 7/7] Cifs: Uncaching no-data page in readpage()

From: Li Wang
Date: Mon Nov 11 2013 - 10:41:57 EST


Currently, if one page allocated into fscache in readpage(), however, with
no-data read, it is not uncached. This patch fixes this.

Signed-off-by: Li Wang <liwang@xxxxxxxxxxxxxxx>
---
fs/cifs/file.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/fs/cifs/file.c b/fs/cifs/file.c
index 7ddddf2..153bc58 100644
--- a/fs/cifs/file.c
+++ b/fs/cifs/file.c
@@ -3406,8 +3406,10 @@ static int cifs_readpage_worker(struct file *file, struct page *page,

rc = cifs_read(file, read_data, PAGE_CACHE_SIZE, poffset);

- if (rc < 0)
+ if (rc < 0) {
+ cifs_fscache_readpage_cancel(file_inode(file), page);
goto io_error;
+ }
else
cifs_dbg(FYI, "Bytes read %d\n", rc);

--
1.7.9.5

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/