Re: [PATCH] Fix dirty page accounting inredirty_page_for_writepage()

From: Linus Torvalds
Date: Wed Apr 29 2009 - 20:10:34 EST




On Wed, 29 Apr 2009, Mathieu Desnoyers wrote:
>
> This patch adds missing dirty page accounting in redirty_page_for_writepage().
> This should fix a _lot_ of issues involving machines becoming slow under heavy
> write I/O. No surprise : eventually the system starts swapping.

That patch (and description) is odd.

The patch actually adds the dirty page accounting not to
redirty_page_for_writepage(), but to __set_page_dirty_nobuffers().

And __set_page_dirty_nobuffers() will later (just a few lines down) call
down to account_page_dirtied(), which in turn does all that
same accounting (assuming the "mapping" is marked to account for dirty.

So the description seems to be wrong, but so does the patch.

Did you attach the wrong patch (explaining both problems)?

Or if the patch is what you really meant to do, then you need to fix your
explanation, and also explain why the double-dirty accounting is a good
idea.

Or is the real problem perhaps that your /tmp is ramdisk, and not marked
to do dirty accounting?

Linus
--
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/