diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2017-09-14 21:54:01 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2017-09-14 21:54:01 -0400 |
commit | 0f0d12728e56c94d3289c6831243b6faeae8a19d (patch) | |
tree | bd52fd4ed6fba2a0d8bb95e7fc33f51ac299001d /fs/udf/super.c | |
parent | 581bfce969cbfc7ce43ee92273be9cb7c3fdfa61 (diff) | |
parent | e462ec50cb5fad19f6003a3d8087f4a0945dd2b1 (diff) |
Merge branch 'work.mount' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
Pull mount flag updates from Al Viro:
"Another chunk of fmount preparations from dhowells; only trivial
conflicts for that part. It separates MS_... bits (very grotty
mount(2) ABI) from the struct super_block ->s_flags (kernel-internal,
only a small subset of MS_... stuff).
This does *not* convert the filesystems to new constants; only the
infrastructure is done here. The next step in that series is where the
conflicts would be; that's the conversion of filesystems. It's purely
mechanical and it's better done after the merge, so if you could run
something like
list=$(for i in MS_RDONLY MS_NOSUID MS_NODEV MS_NOEXEC MS_SYNCHRONOUS MS_MANDLOCK MS_DIRSYNC MS_NOATIME MS_NODIRATIME MS_SILENT MS_POSIXACL MS_KERNMOUNT MS_I_VERSION MS_LAZYTIME; do git grep -l $i fs drivers/staging/lustre drivers/mtd ipc mm include/linux; done|sort|uniq|grep -v '^fs/namespace.c$')
sed -i -e 's/\<MS_RDONLY\>/SB_RDONLY/g' \
-e 's/\<MS_NOSUID\>/SB_NOSUID/g' \
-e 's/\<MS_NODEV\>/SB_NODEV/g' \
-e 's/\<MS_NOEXEC\>/SB_NOEXEC/g' \
-e 's/\<MS_SYNCHRONOUS\>/SB_SYNCHRONOUS/g' \
-e 's/\<MS_MANDLOCK\>/SB_MANDLOCK/g' \
-e 's/\<MS_DIRSYNC\>/SB_DIRSYNC/g' \
-e 's/\<MS_NOATIME\>/SB_NOATIME/g' \
-e 's/\<MS_NODIRATIME\>/SB_NODIRATIME/g' \
-e 's/\<MS_SILENT\>/SB_SILENT/g' \
-e 's/\<MS_POSIXACL\>/SB_POSIXACL/g' \
-e 's/\<MS_KERNMOUNT\>/SB_KERNMOUNT/g' \
-e 's/\<MS_I_VERSION\>/SB_I_VERSION/g' \
-e 's/\<MS_LAZYTIME\>/SB_LAZYTIME/g' \
$list
and commit it with something along the lines of 'convert filesystems
away from use of MS_... constants' as commit message, it would save a
quite a bit of headache next cycle"
* 'work.mount' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
VFS: Differentiate mount flags (MS_*) from internal superblock flags
VFS: Convert sb->s_flags & MS_RDONLY to sb_rdonly(sb)
vfs: Add sb_rdonly(sb) to query the MS_RDONLY flag on s_flags
Diffstat (limited to 'fs/udf/super.c')
-rw-r--r-- | fs/udf/super.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/fs/udf/super.c b/fs/udf/super.c index 93c59630512b..99cb81d0077f 100644 --- a/fs/udf/super.c +++ b/fs/udf/super.c | |||
@@ -673,7 +673,7 @@ static int udf_remount_fs(struct super_block *sb, int *flags, char *options) | |||
673 | sbi->s_dmode = uopt.dmode; | 673 | sbi->s_dmode = uopt.dmode; |
674 | write_unlock(&sbi->s_cred_lock); | 674 | write_unlock(&sbi->s_cred_lock); |
675 | 675 | ||
676 | if ((*flags & MS_RDONLY) == (sb->s_flags & MS_RDONLY)) | 676 | if ((bool)(*flags & MS_RDONLY) == sb_rdonly(sb)) |
677 | goto out_unlock; | 677 | goto out_unlock; |
678 | 678 | ||
679 | if (*flags & MS_RDONLY) | 679 | if (*flags & MS_RDONLY) |
@@ -1017,7 +1017,7 @@ static int udf_load_metadata_files(struct super_block *sb, int partition, | |||
1017 | 1017 | ||
1018 | fe = udf_iget_special(sb, &addr); | 1018 | fe = udf_iget_special(sb, &addr); |
1019 | if (IS_ERR(fe)) { | 1019 | if (IS_ERR(fe)) { |
1020 | if (sb->s_flags & MS_RDONLY) | 1020 | if (sb_rdonly(sb)) |
1021 | udf_warn(sb, "bitmap inode efe not found but it's ok since the disc is mounted read-only\n"); | 1021 | udf_warn(sb, "bitmap inode efe not found but it's ok since the disc is mounted read-only\n"); |
1022 | else { | 1022 | else { |
1023 | udf_err(sb, "bitmap inode efe not found and attempted read-write mount\n"); | 1023 | udf_err(sb, "bitmap inode efe not found and attempted read-write mount\n"); |
@@ -1341,7 +1341,7 @@ static int udf_load_partdesc(struct super_block *sb, sector_t block) | |||
1341 | * writing to it (we overwrite blocks instead of relocating | 1341 | * writing to it (we overwrite blocks instead of relocating |
1342 | * them). | 1342 | * them). |
1343 | */ | 1343 | */ |
1344 | if (!(sb->s_flags & MS_RDONLY)) { | 1344 | if (!sb_rdonly(sb)) { |
1345 | ret = -EACCES; | 1345 | ret = -EACCES; |
1346 | goto out_bh; | 1346 | goto out_bh; |
1347 | } | 1347 | } |
@@ -2205,7 +2205,7 @@ static int udf_fill_super(struct super_block *sb, void *options, int silent) | |||
2205 | ret = -EINVAL; | 2205 | ret = -EINVAL; |
2206 | goto error_out; | 2206 | goto error_out; |
2207 | } else if (minUDFWriteRev > UDF_MAX_WRITE_VERSION && | 2207 | } else if (minUDFWriteRev > UDF_MAX_WRITE_VERSION && |
2208 | !(sb->s_flags & MS_RDONLY)) { | 2208 | !sb_rdonly(sb)) { |
2209 | ret = -EACCES; | 2209 | ret = -EACCES; |
2210 | goto error_out; | 2210 | goto error_out; |
2211 | } | 2211 | } |
@@ -2226,7 +2226,7 @@ static int udf_fill_super(struct super_block *sb, void *options, int silent) | |||
2226 | 2226 | ||
2227 | if (sbi->s_partmaps[sbi->s_partition].s_partition_flags & | 2227 | if (sbi->s_partmaps[sbi->s_partition].s_partition_flags & |
2228 | UDF_PART_FLAG_READ_ONLY && | 2228 | UDF_PART_FLAG_READ_ONLY && |
2229 | !(sb->s_flags & MS_RDONLY)) { | 2229 | !sb_rdonly(sb)) { |
2230 | ret = -EACCES; | 2230 | ret = -EACCES; |
2231 | goto error_out; | 2231 | goto error_out; |
2232 | } | 2232 | } |
@@ -2245,7 +2245,7 @@ static int udf_fill_super(struct super_block *sb, void *options, int silent) | |||
2245 | le16_to_cpu(ts.year), ts.month, ts.day, | 2245 | le16_to_cpu(ts.year), ts.month, ts.day, |
2246 | ts.hour, ts.minute, le16_to_cpu(ts.typeAndTimezone)); | 2246 | ts.hour, ts.minute, le16_to_cpu(ts.typeAndTimezone)); |
2247 | } | 2247 | } |
2248 | if (!(sb->s_flags & MS_RDONLY)) { | 2248 | if (!sb_rdonly(sb)) { |
2249 | udf_open_lvid(sb); | 2249 | udf_open_lvid(sb); |
2250 | lvid_open = true; | 2250 | lvid_open = true; |
2251 | } | 2251 | } |
@@ -2332,7 +2332,7 @@ static void udf_put_super(struct super_block *sb) | |||
2332 | if (UDF_QUERY_FLAG(sb, UDF_FLAG_NLS_MAP)) | 2332 | if (UDF_QUERY_FLAG(sb, UDF_FLAG_NLS_MAP)) |
2333 | unload_nls(sbi->s_nls_map); | 2333 | unload_nls(sbi->s_nls_map); |
2334 | #endif | 2334 | #endif |
2335 | if (!(sb->s_flags & MS_RDONLY)) | 2335 | if (!sb_rdonly(sb)) |
2336 | udf_close_lvid(sb); | 2336 | udf_close_lvid(sb); |
2337 | brelse(sbi->s_lvid_bh); | 2337 | brelse(sbi->s_lvid_bh); |
2338 | udf_sb_free_partitions(sb); | 2338 | udf_sb_free_partitions(sb); |