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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, May 06, 2011 at 10:36:14PM +0800, Jan Kara wrote:
> On Fri 06-05-11 11:08:24, Wu Fengguang 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.
> > 
> > about v1: The initial version was to count successful ->write_inode()
> > calls.  However it leads to busy loops for sync() over NFS, because NFS
> > ridiculously returns 0 (success) while at the same time redirties the
> > inode.  The NFS case can be trivially fixed, however there may be more
> > hidden bugs in other filesystems..
>   I think Christoph didn't like this patch
> (https://lkml.org/lkml/2011/5/4/123) and suggested that inodes_cleaned
> should remain local to fs-writeback.c...

Yes, he didn't like introducing one more field to writeback_control,
which will be removed in patch 14. (It will be a lot of fuss to move
patch 14 here or move this logic after patch 14.)

Thanks,
Fengguang
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux