From 2bd241fb762dec91afebf2370e874eda7758d250 Mon Sep 17 00:00:00 2001 From: "Aneesh Kumar K.V" Date: Fri, 11 Jul 2008 19:27:31 -0400 Subject: [PATCH] --- yaml --- r: 101116 b: refs/heads/master c: 06d6cf6959d22037fcec598f4f954db5db3d7356 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/include/linux/writeback.h | 1 + trunk/mm/page-writeback.c | 3 +++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 3cc53a88a9d4..d443b7a30e46 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d2a1763791a634e315ec926b62829c1e88842c86 +refs/heads/master: 06d6cf6959d22037fcec598f4f954db5db3d7356 diff --git a/trunk/include/linux/writeback.h b/trunk/include/linux/writeback.h index f462439cc288..0d8573e6b9ec 100644 --- a/trunk/include/linux/writeback.h +++ b/trunk/include/linux/writeback.h @@ -63,6 +63,7 @@ struct writeback_control { unsigned for_writepages:1; /* This is a writepages() call */ unsigned range_cyclic:1; /* range_start is cyclic */ unsigned more_io:1; /* more io to be dispatched */ + unsigned range_cont:1; }; /* diff --git a/trunk/mm/page-writeback.c b/trunk/mm/page-writeback.c index 789b6adbef37..ded57d528060 100644 --- a/trunk/mm/page-writeback.c +++ b/trunk/mm/page-writeback.c @@ -956,6 +956,9 @@ int write_cache_pages(struct address_space *mapping, } if (wbc->range_cyclic || (range_whole && wbc->nr_to_write > 0)) mapping->writeback_index = index; + + if (wbc->range_cont) + wbc->range_start = index << PAGE_CACHE_SHIFT; return ret; } EXPORT_SYMBOL(write_cache_pages);