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>
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 @@
 	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: