Re: [PATCH 3/7] writeback: Move I_DIRTY_PAGES handling

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

 



On Mon 30-04-12 10:41:38, Christoph Hellwig wrote:
> On Tue, Mar 20, 2012 at 11:56:27PM +0100, Jan Kara wrote:
> > Instead of clearing I_DIRTY_PAGES and resetting it when we didn't succeed in
> > writing them all, just clear the bit only when we succeeded writing all the
> > pages. We also move the clearing of the bit close to other i_state handling to
> > separate it from writeback list handling. This is desirable because list
> > handling will differ for flusher thread and other writeback_single_inode()
> > callers in future. No filesystem plays any tricks with I_DIRTY_PAGES (like
> > checking it in ->writepages or ->write_inode implementation) so this movement
> > is safe.
> 
> Looks good to me,
> 
> Reviewed-by: Christoph Hellwig <hch@xxxxxx>
  Thanks for review.

> In addition to this cleanup I wonder if we could go further and just
> kill I_DIRTY_PAGES off.  I can't see any value add over using
> mapping_tagged(mapping, PAGECACHE_TAG_DIRTY), which has the big benefit
> of beeing managed transparently by the pagecache radix tree.
  The only reason I can thing off is that checking whether inode is dirty
is simpler with I_DIRTY_PAGES. Without it the check would have to be
(inode->i_state & I_DIRTY) || mapping_tagged(inode->i_mapping,
    PAGECACHE_TAG_DIRTY)
which would need a separate helper function I guess.

								Honza
-- 
Jan Kara <jack@xxxxxxx>
SUSE Labs, CR
--
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