mirror of
https://github.com/ukui/kernel.git
synced 2026-03-09 10:07:04 -07:00
VFS: Convert sb->s_flags & MS_RDONLY to sb_rdonly(sb)
Firstly by applying the following with coccinelle's spatch: @@ expression SB; @@ -SB->s_flags & MS_RDONLY +sb_rdonly(SB) to effect the conversion to sb_rdonly(sb), then by applying: @@ expression A, SB; @@ ( -(!sb_rdonly(SB)) && A +!sb_rdonly(SB) && A | -A != (sb_rdonly(SB)) +A != sb_rdonly(SB) | -A == (sb_rdonly(SB)) +A == sb_rdonly(SB) | -!(sb_rdonly(SB)) +!sb_rdonly(SB) | -A && (sb_rdonly(SB)) +A && sb_rdonly(SB) | -A || (sb_rdonly(SB)) +A || sb_rdonly(SB) | -(sb_rdonly(SB)) != A +sb_rdonly(SB) != A | -(sb_rdonly(SB)) == A +sb_rdonly(SB) == A | -(sb_rdonly(SB)) && A +sb_rdonly(SB) && A | -(sb_rdonly(SB)) || A +sb_rdonly(SB) || A ) @@ expression A, B, SB; @@ ( -(sb_rdonly(SB)) ? 1 : 0 +sb_rdonly(SB) | -(sb_rdonly(SB)) ? A : B +sb_rdonly(SB) ? A : B ) to remove left over excess bracketage and finally by applying: @@ expression A, SB; @@ ( -(A & MS_RDONLY) != sb_rdonly(SB) +(bool)(A & MS_RDONLY) != sb_rdonly(SB) | -(A & MS_RDONLY) == sb_rdonly(SB) +(bool)(A & MS_RDONLY) == sb_rdonly(SB) ) to make comparisons against the result of sb_rdonly() (which is a bool) work correctly. Signed-off-by: David Howells <dhowells@redhat.com>
This commit is contained in:
@@ -210,7 +210,7 @@ static int client_common_fill_super(struct super_block *sb, char *md, char *dt,
|
||||
data->ocd_ibits_known = MDS_INODELOCK_FULL;
|
||||
data->ocd_version = LUSTRE_VERSION_CODE;
|
||||
|
||||
if (sb->s_flags & MS_RDONLY)
|
||||
if (sb_rdonly(sb))
|
||||
data->ocd_connect_flags |= OBD_CONNECT_RDONLY;
|
||||
if (sbi->ll_flags & LL_SBI_USER_XATTR)
|
||||
data->ocd_connect_flags |= OBD_CONNECT_XATTR;
|
||||
@@ -2033,7 +2033,7 @@ int ll_remount_fs(struct super_block *sb, int *flags, char *data)
|
||||
int err;
|
||||
__u32 read_only;
|
||||
|
||||
if ((*flags & MS_RDONLY) != (sb->s_flags & MS_RDONLY)) {
|
||||
if ((bool)(*flags & MS_RDONLY) != sb_rdonly(sb)) {
|
||||
read_only = *flags & MS_RDONLY;
|
||||
err = obd_set_info_async(NULL, sbi->ll_md_exp,
|
||||
sizeof(KEY_READ_ONLY),
|
||||
|
||||
@@ -562,8 +562,7 @@ static struct dentry *ll_lookup_it(struct inode *parent, struct dentry *dentry,
|
||||
}
|
||||
}
|
||||
|
||||
if (it->it_op & IT_OPEN && it->it_flags & FMODE_WRITE &&
|
||||
dentry->d_sb->s_flags & MS_RDONLY)
|
||||
if (it->it_op & IT_OPEN && it->it_flags & FMODE_WRITE && sb_rdonly(dentry->d_sb))
|
||||
return ERR_PTR(-EROFS);
|
||||
|
||||
if (it->it_op & IT_CREAT)
|
||||
|
||||
@@ -450,7 +450,7 @@ affs_error(struct super_block *sb, const char *function, const char *fmt, ...)
|
||||
vaf.fmt = fmt;
|
||||
vaf.va = &args;
|
||||
pr_crit("error (device %s): %s(): %pV\n", sb->s_id, function, &vaf);
|
||||
if (!(sb->s_flags & MS_RDONLY))
|
||||
if (!sb_rdonly(sb))
|
||||
pr_warn("Remounting filesystem read-only\n");
|
||||
sb->s_flags |= MS_RDONLY;
|
||||
va_end(args);
|
||||
|
||||
@@ -19,7 +19,7 @@ affs_count_free_blocks(struct super_block *sb)
|
||||
|
||||
pr_debug("%s()\n", __func__);
|
||||
|
||||
if (sb->s_flags & MS_RDONLY)
|
||||
if (sb_rdonly(sb))
|
||||
return 0;
|
||||
|
||||
mutex_lock(&AFFS_SB(sb)->s_bmlock);
|
||||
|
||||
@@ -80,7 +80,7 @@ void affs_mark_sb_dirty(struct super_block *sb)
|
||||
struct affs_sb_info *sbi = AFFS_SB(sb);
|
||||
unsigned long delay;
|
||||
|
||||
if (sb->s_flags & MS_RDONLY)
|
||||
if (sb_rdonly(sb))
|
||||
return;
|
||||
|
||||
spin_lock(&sbi->work_lock);
|
||||
@@ -464,7 +464,7 @@ got_root:
|
||||
* not recommended.
|
||||
*/
|
||||
if ((chksum == FS_DCFFS || chksum == MUFS_DCFFS || chksum == FS_DCOFS
|
||||
|| chksum == MUFS_DCOFS) && !(sb->s_flags & MS_RDONLY)) {
|
||||
|| chksum == MUFS_DCOFS) && !sb_rdonly(sb)) {
|
||||
pr_notice("Dircache FS - mounting %s read only\n", sb->s_id);
|
||||
sb->s_flags |= MS_RDONLY;
|
||||
}
|
||||
@@ -596,7 +596,7 @@ affs_remount(struct super_block *sb, int *flags, char *data)
|
||||
memcpy(sbi->s_volume, volume, 32);
|
||||
spin_unlock(&sbi->symlink_lock);
|
||||
|
||||
if ((*flags & MS_RDONLY) == (sb->s_flags & MS_RDONLY))
|
||||
if ((bool)(*flags & MS_RDONLY) == sb_rdonly(sb))
|
||||
return 0;
|
||||
|
||||
if (*flags & MS_RDONLY)
|
||||
|
||||
@@ -838,7 +838,7 @@ befs_fill_super(struct super_block *sb, void *data, int silent)
|
||||
|
||||
befs_debug(sb, "---> %s", __func__);
|
||||
|
||||
if (!(sb->s_flags & MS_RDONLY)) {
|
||||
if (!sb_rdonly(sb)) {
|
||||
befs_warning(sb,
|
||||
"No write support. Marking filesystem read-only");
|
||||
sb->s_flags |= MS_RDONLY;
|
||||
|
||||
@@ -690,7 +690,7 @@ static u64 __btrfs_dev_replace_cancel(struct btrfs_fs_info *fs_info)
|
||||
u64 result;
|
||||
int ret;
|
||||
|
||||
if (fs_info->sb->s_flags & MS_RDONLY)
|
||||
if (sb_rdonly(fs_info->sb))
|
||||
return -EROFS;
|
||||
|
||||
mutex_lock(&dev_replace->lock_finishing_cancel_unmount);
|
||||
|
||||
@@ -2478,7 +2478,7 @@ static int btrfs_replay_log(struct btrfs_fs_info *fs_info,
|
||||
return ret;
|
||||
}
|
||||
|
||||
if (fs_info->sb->s_flags & MS_RDONLY) {
|
||||
if (sb_rdonly(fs_info->sb)) {
|
||||
ret = btrfs_commit_super(fs_info);
|
||||
if (ret)
|
||||
return ret;
|
||||
@@ -2874,7 +2874,7 @@ int open_ctree(struct super_block *sb,
|
||||
|
||||
features = btrfs_super_compat_ro_flags(disk_super) &
|
||||
~BTRFS_FEATURE_COMPAT_RO_SUPP;
|
||||
if (!(sb->s_flags & MS_RDONLY) && features) {
|
||||
if (!sb_rdonly(sb) && features) {
|
||||
btrfs_err(fs_info,
|
||||
"cannot mount read-write because of unsupported optional features (%llx)",
|
||||
features);
|
||||
@@ -3039,7 +3039,7 @@ retry_root_backup:
|
||||
btrfs_calc_num_tolerated_disk_barrier_failures(fs_info);
|
||||
if (fs_info->fs_devices->missing_devices >
|
||||
fs_info->num_tolerated_disk_barrier_failures &&
|
||||
!(sb->s_flags & MS_RDONLY)) {
|
||||
!sb_rdonly(sb)) {
|
||||
btrfs_warn(fs_info,
|
||||
"missing devices (%llu) exceeds the limit (%d), writeable mount is not allowed",
|
||||
fs_info->fs_devices->missing_devices,
|
||||
@@ -3102,7 +3102,7 @@ retry_root_backup:
|
||||
if (ret)
|
||||
goto fail_qgroup;
|
||||
|
||||
if (!(sb->s_flags & MS_RDONLY)) {
|
||||
if (!sb_rdonly(sb)) {
|
||||
ret = btrfs_cleanup_fs_roots(fs_info);
|
||||
if (ret)
|
||||
goto fail_qgroup;
|
||||
@@ -3128,7 +3128,7 @@ retry_root_backup:
|
||||
goto fail_qgroup;
|
||||
}
|
||||
|
||||
if (sb->s_flags & MS_RDONLY)
|
||||
if (sb_rdonly(sb))
|
||||
return 0;
|
||||
|
||||
if (btrfs_test_opt(fs_info, CLEAR_CACHE) &&
|
||||
@@ -3928,7 +3928,7 @@ void close_ctree(struct btrfs_fs_info *fs_info)
|
||||
|
||||
cancel_work_sync(&fs_info->async_reclaim_work);
|
||||
|
||||
if (!(fs_info->sb->s_flags & MS_RDONLY)) {
|
||||
if (!sb_rdonly(fs_info->sb)) {
|
||||
/*
|
||||
* If the cleaner thread is stopped and there are
|
||||
* block groups queued for removal, the deletion will be
|
||||
|
||||
@@ -2061,7 +2061,7 @@ int repair_eb_io_failure(struct btrfs_fs_info *fs_info,
|
||||
unsigned long i, num_pages = num_extent_pages(eb->start, eb->len);
|
||||
int ret = 0;
|
||||
|
||||
if (fs_info->sb->s_flags & MS_RDONLY)
|
||||
if (sb_rdonly(fs_info->sb))
|
||||
return -EROFS;
|
||||
|
||||
for (i = 0; i < num_pages; i++) {
|
||||
@@ -2111,7 +2111,7 @@ int clean_io_failure(struct btrfs_fs_info *fs_info,
|
||||
failrec->start);
|
||||
goto out;
|
||||
}
|
||||
if (fs_info->sb->s_flags & MS_RDONLY)
|
||||
if (sb_rdonly(fs_info->sb))
|
||||
goto out;
|
||||
|
||||
spin_lock(&io_tree->lock);
|
||||
|
||||
@@ -5817,7 +5817,7 @@ struct inode *btrfs_lookup_dentry(struct inode *dir, struct dentry *dentry)
|
||||
|
||||
if (!IS_ERR(inode) && root != sub_root) {
|
||||
down_read(&fs_info->cleanup_work_sem);
|
||||
if (!(inode->i_sb->s_flags & MS_RDONLY))
|
||||
if (!sb_rdonly(inode->i_sb))
|
||||
ret = btrfs_orphan_cleanup(sub_root);
|
||||
up_read(&fs_info->cleanup_work_sem);
|
||||
if (ret) {
|
||||
|
||||
@@ -4438,7 +4438,7 @@ static long btrfs_ioctl_dev_replace(struct btrfs_fs_info *fs_info,
|
||||
|
||||
switch (p->cmd) {
|
||||
case BTRFS_IOCTL_DEV_REPLACE_CMD_START:
|
||||
if (fs_info->sb->s_flags & MS_RDONLY) {
|
||||
if (sb_rdonly(fs_info->sb)) {
|
||||
ret = -EROFS;
|
||||
goto out;
|
||||
}
|
||||
|
||||
@@ -228,7 +228,7 @@ int btrfs_find_orphan_roots(struct btrfs_fs_info *fs_info)
|
||||
int ret;
|
||||
bool can_recover = true;
|
||||
|
||||
if (fs_info->sb->s_flags & MS_RDONLY)
|
||||
if (sb_rdonly(fs_info->sb))
|
||||
can_recover = false;
|
||||
|
||||
path = btrfs_alloc_path();
|
||||
|
||||
@@ -102,7 +102,7 @@ static void btrfs_handle_error(struct btrfs_fs_info *fs_info)
|
||||
{
|
||||
struct super_block *sb = fs_info->sb;
|
||||
|
||||
if (sb->s_flags & MS_RDONLY)
|
||||
if (sb_rdonly(sb))
|
||||
return;
|
||||
|
||||
if (test_bit(BTRFS_FS_STATE_ERROR, &fs_info->fs_state)) {
|
||||
@@ -138,7 +138,7 @@ void __btrfs_handle_fs_error(struct btrfs_fs_info *fs_info, const char *function
|
||||
* Special case: if the error is EROFS, and we're already
|
||||
* under MS_RDONLY, then it is safe here.
|
||||
*/
|
||||
if (errno == -EROFS && (sb->s_flags & MS_RDONLY))
|
||||
if (errno == -EROFS && sb_rdonly(sb))
|
||||
return;
|
||||
|
||||
#ifdef CONFIG_PRINTK
|
||||
@@ -1687,8 +1687,7 @@ static inline void btrfs_remount_cleanup(struct btrfs_fs_info *fs_info,
|
||||
* close or the filesystem is read only.
|
||||
*/
|
||||
if (btrfs_raw_test_opt(old_opts, AUTO_DEFRAG) &&
|
||||
(!btrfs_raw_test_opt(fs_info->mount_opt, AUTO_DEFRAG) ||
|
||||
(fs_info->sb->s_flags & MS_RDONLY))) {
|
||||
(!btrfs_raw_test_opt(fs_info->mount_opt, AUTO_DEFRAG) || sb_rdonly(fs_info->sb))) {
|
||||
btrfs_cleanup_defrag_inodes(fs_info);
|
||||
}
|
||||
|
||||
@@ -1735,7 +1734,7 @@ static int btrfs_remount(struct super_block *sb, int *flags, char *data)
|
||||
btrfs_resize_thread_pool(fs_info,
|
||||
fs_info->thread_pool_size, old_thread_pool_size);
|
||||
|
||||
if ((*flags & MS_RDONLY) == (sb->s_flags & MS_RDONLY))
|
||||
if ((bool)(*flags & MS_RDONLY) == sb_rdonly(sb))
|
||||
goto out;
|
||||
|
||||
if (*flags & MS_RDONLY) {
|
||||
@@ -1835,7 +1834,7 @@ out:
|
||||
|
||||
restore:
|
||||
/* We've hit an error - don't reset MS_RDONLY */
|
||||
if (sb->s_flags & MS_RDONLY)
|
||||
if (sb_rdonly(sb))
|
||||
old_flags |= MS_RDONLY;
|
||||
sb->s_flags = old_flags;
|
||||
fs_info->mount_opt = old_opts;
|
||||
|
||||
@@ -120,7 +120,7 @@ static ssize_t btrfs_feature_attr_store(struct kobject *kobj,
|
||||
if (!fs_info)
|
||||
return -EPERM;
|
||||
|
||||
if (fs_info->sb->s_flags & MS_RDONLY)
|
||||
if (sb_rdonly(fs_info->sb))
|
||||
return -EROFS;
|
||||
|
||||
ret = kstrtoul(skip_spaces(buf), 0, &val);
|
||||
@@ -388,7 +388,7 @@ static ssize_t btrfs_label_store(struct kobject *kobj,
|
||||
if (!fs_info)
|
||||
return -EPERM;
|
||||
|
||||
if (fs_info->sb->s_flags & MS_RDONLY)
|
||||
if (sb_rdonly(fs_info->sb))
|
||||
return -EROFS;
|
||||
|
||||
/*
|
||||
|
||||
@@ -2337,7 +2337,7 @@ int btrfs_init_new_device(struct btrfs_fs_info *fs_info, const char *device_path
|
||||
int seeding_dev = 0;
|
||||
int ret = 0;
|
||||
|
||||
if ((sb->s_flags & MS_RDONLY) && !fs_info->fs_devices->seeding)
|
||||
if (sb_rdonly(sb) && !fs_info->fs_devices->seeding)
|
||||
return -EROFS;
|
||||
|
||||
bdev = blkdev_get_by_path(device_path, FMODE_WRITE | FMODE_EXCL,
|
||||
@@ -4085,7 +4085,7 @@ int btrfs_pause_balance(struct btrfs_fs_info *fs_info)
|
||||
|
||||
int btrfs_cancel_balance(struct btrfs_fs_info *fs_info)
|
||||
{
|
||||
if (fs_info->sb->s_flags & MS_RDONLY)
|
||||
if (sb_rdonly(fs_info->sb))
|
||||
return -EROFS;
|
||||
|
||||
mutex_lock(&fs_info->balance_mutex);
|
||||
|
||||
@@ -133,7 +133,7 @@ static int cachefiles_daemon_add_cache(struct cachefiles_cache *cache)
|
||||
goto error_unsupported;
|
||||
|
||||
ret = -EROFS;
|
||||
if (root->d_sb->s_flags & MS_RDONLY)
|
||||
if (sb_rdonly(root->d_sb))
|
||||
goto error_unsupported;
|
||||
|
||||
/* determine the security of the on-disk cache as this governs
|
||||
|
||||
@@ -568,8 +568,7 @@ static struct dentry *ecryptfs_mount(struct file_system_type *fs_type, int flags
|
||||
* 1) The lower mount is ro
|
||||
* 2) The ecryptfs_encrypted_view mount option is specified
|
||||
*/
|
||||
if (path.dentry->d_sb->s_flags & MS_RDONLY ||
|
||||
mount_crypt_stat->flags & ECRYPTFS_ENCRYPTED_VIEW_ENABLED)
|
||||
if (sb_rdonly(path.dentry->d_sb) || mount_crypt_stat->flags & ECRYPTFS_ENCRYPTED_VIEW_ENABLED)
|
||||
s->s_flags |= MS_RDONLY;
|
||||
|
||||
s->s_maxbytes = path.dentry->d_sb->s_maxbytes;
|
||||
|
||||
@@ -306,7 +306,7 @@ static int efs_fill_super(struct super_block *s, void *d, int silent)
|
||||
}
|
||||
brelse(bh);
|
||||
|
||||
if (!(s->s_flags & MS_RDONLY)) {
|
||||
if (!sb_rdonly(s)) {
|
||||
#ifdef DEBUG
|
||||
pr_info("forcing read-only mode\n");
|
||||
#endif
|
||||
|
||||
@@ -52,7 +52,7 @@ void ext2_error(struct super_block *sb, const char *function,
|
||||
struct ext2_sb_info *sbi = EXT2_SB(sb);
|
||||
struct ext2_super_block *es = sbi->s_es;
|
||||
|
||||
if (!(sb->s_flags & MS_RDONLY)) {
|
||||
if (!sb_rdonly(sb)) {
|
||||
spin_lock(&sbi->s_lock);
|
||||
sbi->s_mount_state |= EXT2_ERROR_FS;
|
||||
es->s_state |= cpu_to_le16(EXT2_ERROR_FS);
|
||||
@@ -151,7 +151,7 @@ static void ext2_put_super (struct super_block * sb)
|
||||
ext2_xattr_destroy_cache(sbi->s_ea_block_cache);
|
||||
sbi->s_ea_block_cache = NULL;
|
||||
}
|
||||
if (!(sb->s_flags & MS_RDONLY)) {
|
||||
if (!sb_rdonly(sb)) {
|
||||
struct ext2_super_block *es = sbi->s_es;
|
||||
|
||||
spin_lock(&sbi->s_lock);
|
||||
@@ -940,8 +940,7 @@ static int ext2_fill_super(struct super_block *sb, void *data, int silent)
|
||||
le32_to_cpu(features));
|
||||
goto failed_mount;
|
||||
}
|
||||
if (!(sb->s_flags & MS_RDONLY) &&
|
||||
(features = EXT2_HAS_RO_COMPAT_FEATURE(sb, ~EXT2_FEATURE_RO_COMPAT_SUPP))){
|
||||
if (!sb_rdonly(sb) && (features = EXT2_HAS_RO_COMPAT_FEATURE(sb, ~EXT2_FEATURE_RO_COMPAT_SUPP))){
|
||||
ext2_msg(sb, KERN_ERR, "error: couldn't mount RDWR because of "
|
||||
"unsupported optional features (%x)",
|
||||
le32_to_cpu(features));
|
||||
@@ -1170,7 +1169,7 @@ static int ext2_fill_super(struct super_block *sb, void *data, int silent)
|
||||
if (EXT2_HAS_COMPAT_FEATURE(sb, EXT3_FEATURE_COMPAT_HAS_JOURNAL))
|
||||
ext2_msg(sb, KERN_WARNING,
|
||||
"warning: mounting ext3 filesystem as ext2");
|
||||
if (ext2_setup_super (sb, es, sb->s_flags & MS_RDONLY))
|
||||
if (ext2_setup_super (sb, es, sb_rdonly(sb)))
|
||||
sb->s_flags |= MS_RDONLY;
|
||||
ext2_write_super(sb);
|
||||
return 0;
|
||||
@@ -1301,7 +1300,7 @@ static int ext2_unfreeze(struct super_block *sb)
|
||||
|
||||
static void ext2_write_super(struct super_block *sb)
|
||||
{
|
||||
if (!(sb->s_flags & MS_RDONLY))
|
||||
if (!sb_rdonly(sb))
|
||||
ext2_sync_fs(sb, 1);
|
||||
}
|
||||
|
||||
@@ -1339,7 +1338,7 @@ static int ext2_remount (struct super_block * sb, int * flags, char * data)
|
||||
"dax flag with busy inodes while remounting");
|
||||
sbi->s_mount_opt ^= EXT2_MOUNT_DAX;
|
||||
}
|
||||
if ((*flags & MS_RDONLY) == (sb->s_flags & MS_RDONLY)) {
|
||||
if ((bool)(*flags & MS_RDONLY) == sb_rdonly(sb)) {
|
||||
spin_unlock(&sbi->s_lock);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -47,7 +47,7 @@ static int ext4_journal_check_start(struct super_block *sb)
|
||||
if (unlikely(ext4_forced_shutdown(EXT4_SB(sb))))
|
||||
return -EIO;
|
||||
|
||||
if (sb->s_flags & MS_RDONLY)
|
||||
if (sb_rdonly(sb))
|
||||
return -EROFS;
|
||||
WARN_ON(sb->s_writers.frozen == SB_FREEZE_COMPLETE);
|
||||
journal = EXT4_SB(sb)->s_journal;
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user