On 12/15/19 8:11 PM, Dave Chinner wrote: >>> diff --git a/fs/super.c b/fs/super.c >>> index cfadab2cbf35..adc18652302b 100644 >>> --- a/fs/super.c >>> +++ b/fs/super.c >>> @@ -80,6 +80,11 @@ static unsigned long super_cache_scan(struct shrinker *shrink, >>> if (!trylock_super(sb)) >>> return SHRINK_STOP; >>> >>> + if (sb->s_writers.frozen != SB_UNFROZEN) { >>> + up_read(&sb->s_umount); >>> + return SHRINK_STOP; >>> + } >> Whatever happened to "let's just fsfreeze the filesystems shortly before >> freezing the system? Did someone find a reason why that wouldn't work? >> >> Also, uh, doesn't this disable memory reclaim for frozen filesystems? >> >> Maybe we all need to go review the xfs io-less inode reclaim series so >> we can stop running transactions in reclaim... I can't merge any of it >> until the mm changes go upstream. > IO-less reclaim doesn't prevent ->destroy_inode from having to run > transactions. e.g. this is the path through which unlink does inode > freeing. Background inode inactivation is the patchset that > addresses this problem...:) Sound backgroup inode inactivation is only for xfs? I suppose this is a generic issue, other fs will also suffer this? Thanks, Junxiao. > > Cheers, > > Dave.