diff --git a/fs/ubifs/io.c b/fs/ubifs/io.c
index 77d5cf4a75477055117e6f98529a4a7bdeea004b..bcf5a16f30bb26f865e49f27124dd0856a2f85d2 100644
--- a/fs/ubifs/io.c
+++ b/fs/ubifs/io.c
@@ -64,6 +64,7 @@ void ubifs_ro_mode(struct ubifs_info *c, int err)
 	if (!c->ro_media) {
 		c->ro_media = 1;
 		c->no_chk_data_crc = 0;
+		c->vfs_sb->s_flags |= MS_RDONLY;
 		ubifs_warn("switched to read-only mode, error %d", err);
 		dbg_dump_stack();
 	}