diff options
author | Jan Kara <jack@suse.cz> | 2008-04-08 13:29:20 +0200 |
---|---|---|
committer | Jan Kara <jack@suse.cz> | 2008-04-17 14:28:14 +0200 |
commit | 96200be3077c5ede16a90b33aca815b444e66043 (patch) | |
tree | c1ee3889fca31d55e973ab2859b19bbbee3a7d22 /fs/udf | |
parent | fa5e08156335d0687c85b4e724db9448fb166601 (diff) | |
download | linux-96200be3077c5ede16a90b33aca815b444e66043.tar.gz linux-96200be3077c5ede16a90b33aca815b444e66043.tar.bz2 linux-96200be3077c5ede16a90b33aca815b444e66043.zip |
udf: Mount filesystem read-only if it has pseudooverwrite partition
As we don't properly support writing to pseudooverwrite partition (we should
add entries to VAT and relocate blocks instead of just writing them), mount
filesystems with such partition as read-only.
Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs/udf')
-rw-r--r-- | fs/udf/super.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/fs/udf/super.c b/fs/udf/super.c index abdb9b31da46..650f20fe9d62 100644 --- a/fs/udf/super.c +++ b/fs/udf/super.c @@ -1208,6 +1208,14 @@ static int udf_load_partdesc(struct super_block *sb, sector_t block) ret = udf_fill_partdesc_info(sb, p, i); if (ret) goto out_bh; + /* + * Mark filesystem read-only if we have a partition with virtual map + * since we don't handle writing to it (we overwrite blocks instead of + * relocating them). + */ + sb->s_flags |= MS_RDONLY; + printk(KERN_NOTICE "UDF-fs: Filesystem marked read-only because " + "writing to pseudooverwrite partition is not implemented.\n"); ret = udf_load_vat(sb, i, type1_idx); out_bh: |