On Thu, 7 Oct 2021 at 08:08, Chengguang Xu <cgxu519@xxxxxxx> wrote: > > 在 2021/10/6 23:33, Miklos Szeredi 写道: > > On Thu, 23 Sept 2021 at 15:08, Chengguang Xu <cgxu519@xxxxxxxxxxxx> wrote: > >> Implement overlayfs' ->evict_inode operation, > >> so that we can clear dirty flags of overlayfs inode. > >> > >> Signed-off-by: Chengguang Xu <cgxu519@xxxxxxxxxxxx> > >> --- > >> fs/overlayfs/super.c | 7 +++++++ > >> 1 file changed, 7 insertions(+) > >> > >> diff --git a/fs/overlayfs/super.c b/fs/overlayfs/super.c > >> index 51886ba6130a..2ab77adf7256 100644 > >> --- a/fs/overlayfs/super.c > >> +++ b/fs/overlayfs/super.c > >> @@ -406,11 +406,18 @@ static int ovl_remount(struct super_block *sb, int *flags, char *data) > >> return ret; > >> } > >> > >> +static void ovl_evict_inode(struct inode *inode) > >> +{ > >> + inode->i_state &= ~I_DIRTY_ALL; > >> + clear_inode(inode); > > clear_inode() should already clear the dirty flags; the default > > eviction should work fine without having to define an ->evict_inode. > > What am I missing? > > Yeah, you are right, we don't need overlayfs' own ->evict_inode anymore > > because we wait all writeback upper inodes in overlayfs' ->sync_fs. Okay, I dropped this patch then. Thanks, Miklos