Re: [PATCH 06/12] writeback: remove unused nonblocking and congestion checks (gfs2)

Steven Whitehouse
2009-11-18T09:57:34Z

Hi,

That looks ok to me, modulo the warnings below. The only "non-obvious"
thing in this area which the GFS2 writepage[s] code relies upon is the
assumption that if we have a ->writepages() then ->writepage() will
never be called from a context which requires the fs to actually do a
write (i.e. the fs can refuse this if required). That is also only the
case for journaled data files - normal writes don't have that
requirement.

CC [M] fs/gfs2/aops.o
fs/gfs2/aops.c: In function ‘gfs2_write_jdata_pagevec’:
fs/gfs2/aops.c:272: warning: unused variable ‘bdi’
fs/gfs2/aops.c: In function ‘gfs2_write_cache_jdata’:
fs/gfs2/aops.c:336: warning: unused variable ‘bdi’

Once the warnings are fixed:

Acked-by: Steven Whitehouse <swhiteho@redhat.com>

Do you want me to add this patch into my tree, or were you planning to
submit via a different tree?

Steve.

On Wed, 2009-11-18 at 16:26 +0800, Wu Fengguang wrote:
> plain text document attachment
> (writeback-remove-congested-checks-linux_fs_gfs2_aops.patch)
> No one is calling wb_writeback and write_cache_pages with
> wbc.nonblocking=1 any more. And lumpy pageout will want to do
> nonblocking writeback without the congestion wait.
>
> CC: Steven Whitehouse <swhiteho@redhat.com>
> Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
> ---
> fs/gfs2/aops.c | 10 ----------
> 1 file changed, 10 deletions(-)
>
> --- linux.orig/fs/gfs2/aops.c 2009-11-06 09:22:35.000000000 +0800
> +++ linux/fs/gfs2/aops.c 2009-11-06 09:52:15.000000000 +0800
> @@ -313,11 +313,6 @@ static int gfs2_write_jdata_pagevec(stru
>
> if (ret || (--(wbc->nr_to_write) <= 0))
> ret = 1;
> - if (wbc->nonblocking && bdi_write_congested(bdi)) {
> - wbc->encountered_congestion = 1;
> - ret = 1;
> - }
> -
> }
> gfs2_trans_end(sdp);
> return ret;
> @@ -348,11 +343,6 @@ static int gfs2_write_cache_jdata(struct
> int scanned = 0;
> int range_whole = 0;
>
> - if (wbc->nonblocking && bdi_write_congested(bdi)) {
> - wbc->encountered_congestion = 1;
> - return 0;
> - }
> -
> pagevec_init(&pvec, 0);
> if (wbc->range_cyclic) {
> index = mapping->writeback_index; /* Start from prev offset */
>
>