Re: [PATCH] writeback: avoid double-writing the inode on a lazytime expiration

Theodore Y. Ts'o
2020-03-20T02:47:05Z

On Thu, Mar 12, 2020 at 07:34:45AM -0700, Christoph Hellwig wrote:
> I haven't seen the original mail this replies to, but if we could
> get the lazytime expirty by some other means (e.g. an explicit
> callback), XFS could opt out of all the VFS inode tracking again,
> which would simplify a few things.

Part of my thinking of calling

inode->i_sb->s_op->dirty_inode(inode, I_DIRTY_TIME_EXPIRED);

So that it would be an explicit callback to XFS. So why don't I break
this as two patches --- one which uses I_DIRTY_SYNC, as before, and a
second one which changes calls dirty_inode() with
I_DIRTY_TIME_EXPIRED, and with a change to XFS so that it recognizes
I_DIRTY_TIME_EXPIRED as if it were I_DIRTY_SYNC. If this would then
allow XFS to simplify how it handles VFS tracking, you could do that
in a separate patch.

Does that work? I'll send out the two patches, and if you can
review/ack the second patch, that would be great.

- Ted