aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/patches-3.18/501-yaffs-add-missing-flush-arguments.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/generic/patches-3.18/501-yaffs-add-missing-flush-arguments.patch')
-rw-r--r--target/linux/generic/patches-3.18/501-yaffs-add-missing-flush-arguments.patch38
1 files changed, 38 insertions, 0 deletions
diff --git a/target/linux/generic/patches-3.18/501-yaffs-add-missing-flush-arguments.patch b/target/linux/generic/patches-3.18/501-yaffs-add-missing-flush-arguments.patch
new file mode 100644
index 0000000000..d5ccc3e81e
--- /dev/null
+++ b/target/linux/generic/patches-3.18/501-yaffs-add-missing-flush-arguments.patch
@@ -0,0 +1,38 @@
+--- a/fs/yaffs2/yaffs_vfs.c
++++ b/fs/yaffs2/yaffs_vfs.c
+@@ -738,7 +738,7 @@ static int yaffs_file_flush(struct file
+
+ yaffs_gross_lock(dev);
+
+- yaffs_flush_file(obj, 1, 0);
++ yaffs_flush_file(obj, 1, 0, 1);
+
+ yaffs_gross_unlock(dev);
+
+@@ -768,7 +768,7 @@ static int yaffs_sync_object(struct file
+ yaffs_trace(YAFFS_TRACE_OS | YAFFS_TRACE_SYNC,
+ "yaffs_sync_object");
+ yaffs_gross_lock(dev);
+- yaffs_flush_file(obj, 1, datasync);
++ yaffs_flush_file(obj, 1, datasync, 1);
+ yaffs_gross_unlock(dev);
+ return 0;
+ }
+@@ -2187,7 +2187,7 @@ static void yaffs_flush_inodes(struct su
+ yaffs_trace(YAFFS_TRACE_OS,
+ "flushing obj %d",
+ obj->obj_id);
+- yaffs_flush_file(obj, 1, 0);
++ yaffs_flush_file(obj, 1, 0, 1);
+ }
+ }
+ }
+@@ -2200,7 +2200,7 @@ static void yaffs_flush_super(struct sup
+
+ yaffs_flush_inodes(sb);
+ yaffs_update_dirty_dirs(dev);
+- yaffs_flush_whole_cache(dev);
++ yaffs_flush_whole_cache(dev, 1);
+ if (do_checkpoint)
+ yaffs_checkpoint_save(dev);
+ }