summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--fs/ubifs/file.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/fs/ubifs/file.c b/fs/ubifs/file.c
index 3594aae12a88..adce3b7b5a3e 100644
--- a/fs/ubifs/file.c
+++ b/fs/ubifs/file.c
@@ -1312,7 +1312,11 @@ int ubifs_fsync(struct file *file, int datasync)
dbg_gen("syncing inode %lu", inode->i_ino);
- if (inode->i_sb->s_flags & MS_RDONLY)
+ if (c->ro_mount)
+ /*
+ * For some really strange reasons VFS does not filter out
+ * 'fsync()' for R/O mounted file-systems as per 2.6.39.
+ */
return 0;
/*