[PATCH 13/14] mm: pincer in truncate_inode_pages_range

From: Hugh Dickins
Date: Mon May 30 2011 - 20:54:09 EST


truncate_inode_pages_range()'s final loop has a nice pincer property,
bringing start and end together, squeezing out the last pages. But
the range handling missed out on that, just sliding up the range,
perhaps letting pages come in behind it. Add one more test to give
it the same pincer effect.

Signed-off-by: Hugh Dickins <hughd@xxxxxxxxxx>
---
mm/truncate.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- linux.orig/mm/truncate.c 2011-05-30 15:01:01.660093602 -0700
+++ linux/mm/truncate.c 2011-05-30 15:03:28.688822856 -0700
@@ -269,7 +269,7 @@ void truncate_inode_pages_range(struct a
index = start;
continue;
}
- if (pvec.pages[0]->index > end) {
+ if (index == start && pvec.pages[0]->index > end) {
pagevec_release(&pvec);
break;
}
--
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/