Re: [PATCH 03/15] writeback: introduce writeback_control.inodes_cleaned

Andrew Morton
2011-06-07T23:04:24Z

On Wed, 08 Jun 2011 05:32:39 +0800
Wu Fengguang <fengguang.wu@intel.com> wrote:

> The flusher works on dirty inodes in batches, and may quit prematurely
> if the batch of inodes happen to be metadata-only dirtied: in this case
> wbc->nr_to_write won't be decreased at all, which stands for "no pages
> written" but also mis-interpreted as "no progress".
>
> So introduce writeback_control.inodes_cleaned to count the inodes get
> cleaned. A non-zero value means there are some progress on writeback,
> in which case more writeback can be tried.

Yes, that makes sense. I had a workload which demonstrated/exploited
this nine years ago but I never got around to fixing it, never told
anyone and nobody noticed ;)

> + long inodes_cleaned; /* # of inodes cleaned */

nanonit: I'd call this inodes_written, because they may not actually be
clean.