Current read_pages() assume ->readpages() frees the passed pages.
This patch free the pages in ->read_pages(), if those were remaining
in the pages_list. So, readpages() just can ignore the remaining
pages in pages_list.
Signed-off-by: OGAWA Hirofumi <[email protected]>
---
mm/readahead.c | 2 ++
1 file changed, 2 insertions(+)
diff -puN mm/readahead.c~readpages-fixes mm/readahead.c
--- linux-2.6/mm/readahead.c~readpages-fixes 2006-10-31 04:45:38.000000000 +0900
+++ linux-2.6-hirofumi/mm/readahead.c 2006-10-31 04:46:37.000000000 +0900
@@ -167,6 +167,8 @@ static int read_pages(struct address_spa
if (mapping->a_ops->readpages) {
ret = mapping->a_ops->readpages(filp, mapping, pages, nr_pages);
+ /* Clean up the remaining pages */
+ put_pages_list(pages);
goto out;
}
_
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]