On Fri 17-01-25 16:23:10, libaokun@xxxxxxxxxxxxxxx wrote: > From: Baokun Li <libaokun1@xxxxxxxxxx> > > EXT4_FLAGS_EMERGENCY_RO Indicates that the current file system has become > read-only due to some error. Compared to SB_RDONLY, setting it does not > require a lock because we won't clear it, which avoids over-coupling with > vfs freeze. Also, add a helper function ext4_emergency_ro() to check if > the bit is set. > > Signed-off-by: Baokun Li <libaokun1@xxxxxxxxxx> The same comment about comma after the last enum member. Otherwise looks good. Feel free to add: Reviewed-by: Jan Kara <jack@xxxxxxx> Honza > --- > fs/ext4/ext4.h | 8 +++++++- > 1 file changed, 7 insertions(+), 1 deletion(-) > > diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h > index 612208527512..c5b775482897 100644 > --- a/fs/ext4/ext4.h > +++ b/fs/ext4/ext4.h > @@ -2235,7 +2235,8 @@ extern int ext4_feature_set_ok(struct super_block *sb, int readonly); > enum { > EXT4_FLAGS_RESIZING, /* Avoid superblock update and resize race */ > EXT4_FLAGS_SHUTDOWN, /* Prevent access to the file system */ > - EXT4_FLAGS_BDEV_IS_DAX /* Current block device support DAX */ > + EXT4_FLAGS_BDEV_IS_DAX, /* Current block device support DAX */ > + EXT4_FLAGS_EMERGENCY_RO /* Emergency read-only due to fs errors */ > }; > > static inline int ext4_forced_shutdown(struct super_block *sb) > @@ -2243,6 +2244,11 @@ static inline int ext4_forced_shutdown(struct super_block *sb) > return test_bit(EXT4_FLAGS_SHUTDOWN, &EXT4_SB(sb)->s_ext4_flags); > } > > +static inline int ext4_emergency_ro(struct super_block *sb) > +{ > + return test_bit(EXT4_FLAGS_EMERGENCY_RO, &EXT4_SB(sb)->s_ext4_flags); > +} > + > /* > * Default values for user and/or group using reserved blocks > */ > -- > 2.39.2 > -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR