Message ID | 20250329-work-freeze-v2-3-a47af37ecc3d@kernel.org (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | Extend freeze support to suspend and hibernate | expand |
On Sat 29-03-25 09:42:16, Christian Brauner wrote: > Make all iterators uniform by performing an early check whether the > superblock is dying. > > Signed-off-by: Christian Brauner <brauner@kernel.org> Looks good. Feel free to add: Reviewed-by: Jan Kara <jack@suse.cz> Honza > --- > fs/super.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/fs/super.c b/fs/super.c > index b1acfc38ba0c..c67ea3cdda41 100644 > --- a/fs/super.c > +++ b/fs/super.c > @@ -925,6 +925,9 @@ void iterate_supers(void (*f)(struct super_block *, void *), void *arg) > list_for_each_entry(sb, &super_blocks, s_list) { > bool locked; > > + if (super_flags(sb, SB_DYING)) > + continue; > + > sb->s_count++; > spin_unlock(&sb_lock); > > @@ -962,6 +965,9 @@ void iterate_supers_type(struct file_system_type *type, > hlist_for_each_entry(sb, &type->fs_supers, s_instances) { > bool locked; > > + if (super_flags(sb, SB_DYING)) > + continue; > + > sb->s_count++; > spin_unlock(&sb_lock); > > > -- > 2.47.2 >
diff --git a/fs/super.c b/fs/super.c index b1acfc38ba0c..c67ea3cdda41 100644 --- a/fs/super.c +++ b/fs/super.c @@ -925,6 +925,9 @@ void iterate_supers(void (*f)(struct super_block *, void *), void *arg) list_for_each_entry(sb, &super_blocks, s_list) { bool locked; + if (super_flags(sb, SB_DYING)) + continue; + sb->s_count++; spin_unlock(&sb_lock); @@ -962,6 +965,9 @@ void iterate_supers_type(struct file_system_type *type, hlist_for_each_entry(sb, &type->fs_supers, s_instances) { bool locked; + if (super_flags(sb, SB_DYING)) + continue; + sb->s_count++; spin_unlock(&sb_lock);
Make all iterators uniform by performing an early check whether the superblock is dying. Signed-off-by: Christian Brauner <brauner@kernel.org> --- fs/super.c | 6 ++++++ 1 file changed, 6 insertions(+)