aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2007-02-28 23:13:55 -0500
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-03-01 17:53:39 -0500
commit7b965e0884cee430ffe5dc81cdb117b9316b0549 (patch)
tree754dce6432258e0a8c3a758e13a34eb3a1d22ee1
parent5a39e8c6d655b4fe8305ef8cc2d9bbe782bfee5f (diff)
[PATCH] VM: invalidate_inode_pages2_range() should not exit early
Fix invalidate_inode_pages2_range() so that it does not immediately exit just because a single page in the specified range could not be removed. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--mm/truncate.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/mm/truncate.c b/mm/truncate.c
index ebf3fcb4115b..0f4b6d18ab0e 100644
--- a/mm/truncate.c
+++ b/mm/truncate.c
@@ -375,10 +375,10 @@ int invalidate_inode_pages2_range(struct address_space *mapping,
375 375
376 pagevec_init(&pvec, 0); 376 pagevec_init(&pvec, 0);
377 next = start; 377 next = start;
378 while (next <= end && !ret && !wrapped && 378 while (next <= end && !wrapped &&
379 pagevec_lookup(&pvec, mapping, next, 379 pagevec_lookup(&pvec, mapping, next,
380 min(end - next, (pgoff_t)PAGEVEC_SIZE - 1) + 1)) { 380 min(end - next, (pgoff_t)PAGEVEC_SIZE - 1) + 1)) {
381 for (i = 0; !ret && i < pagevec_count(&pvec); i++) { 381 for (i = 0; i < pagevec_count(&pvec); i++) {
382 struct page *page = pvec.pages[i]; 382 struct page *page = pvec.pages[i];
383 pgoff_t page_index; 383 pgoff_t page_index;
384 384