On Thu, Dec 07, 2023 at 02:40:24AM +0000, Al Viro wrote: > On Wed, Dec 06, 2023 at 05:05:32PM +1100, Dave Chinner wrote: > > > @@ -303,6 +303,7 @@ static void destroy_unused_super(struct super_block *s) > > super_unlock_excl(s); > > list_lru_destroy(&s->s_dentry_lru); > > list_lru_destroy(&s->s_inode_lru); > > + free_dlock_list_heads(&s->s_inodes); > > security_sb_free(s); > > put_user_ns(s->s_user_ns); > > kfree(s->s_subtype); > > Umm... Who's going to do that on normal umount? Huh. So neither KASAN nor kmemleak has told me that s->s-inodes was being leaked. I'm guessing a rebase sometime in the past silently dropped a critical hunk from deactivate_locked_super() in the bit bucket, but as nothing since whenever that happened has failed or flagged a memory leak I didn't notice. Such great tools we have...... -Dave. -- Dave Chinner david@xxxxxxxxxxxxx