Messages in this thread Patch in this message | | | Date | Fri, 22 Dec 2006 02:17:14 -0800 | From | Andrew Morton <> | Subject | Re: [PATCH] mm: fix page_mkclean_one (was: 2.6.19 file content corruption on ext3) |
| |
On Fri, 22 Dec 2006 11:00:04 +0100 Martin Michlmayr <tbm@cyrius.com> wrote:
> > - if (TestClearPageDirty(page) && account_size) > > + if (TestClearPageDirty(page) && account_size) { > > + dec_zone_page_state(page, NR_FILE_DIRTY); > > task_io_account_cancelled_write(account_size); > > + } > > This hunk (on top of git from about 2 days ago and your latest patch) > results in the installer hanging right at the start.
You'll need this also:
From: Andrew Morton <akpm@osdl.org>
Only (un)account for IO and page-dirtying for devices which have real backing store (ie: not tmpfs or ramdisks).
Cc: "David S. Miller" <davem@davemloft.net> Cc: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Andrew Morton <akpm@osdl.org> ---
mm/truncate.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff -puN mm/truncate.c~truncate-dirty-memory-accounting-fix mm/truncate.c --- a/mm/truncate.c~truncate-dirty-memory-accounting-fix +++ a/mm/truncate.c @@ -60,7 +60,8 @@ void cancel_dirty_page(struct page *page WARN_ON(++warncount < 5); } - if (TestClearPageDirty(page) && account_size) { + if (TestClearPageDirty(page) && account_size && + mapping_cap_account_dirty(page->mapping)) { dec_zone_page_state(page, NR_FILE_DIRTY); task_io_account_cancelled_write(account_size); } _ - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |