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 | |
parent | fa5e08156335d0687c85b4e724db9448fb166601 (diff) | |
download | op-kernel-dev-96200be3077c5ede16a90b33aca815b444e66043.zip op-kernel-dev-96200be3077c5ede16a90b33aca815b444e66043.tar.gz |
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>
-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 abdb9b3..650f20f 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: |