Commit c46cb141 authored by David Woodhouse's avatar David Woodhouse

JFFS2: make sync() actually work by providing ->sync_fs method.

Signed-off-by: default avatarDavid Woodhouse <dwmw2@infradead.org>
parent 84a96003
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
* *
* For licensing information, see the file 'LICENCE' in this directory. * For licensing information, see the file 'LICENCE' in this directory.
* *
* $Id: super.c,v 1.100 2004/10/21 00:03:50 dwmw2 Exp $ * $Id: super.c,v 1.102 2004/11/12 02:42:17 tpoynor Exp $
* *
*/ */
...@@ -56,6 +56,16 @@ static void jffs2_i_init_once(void * foo, kmem_cache_t * cachep, unsigned long f ...@@ -56,6 +56,16 @@ static void jffs2_i_init_once(void * foo, kmem_cache_t * cachep, unsigned long f
} }
} }
static int jffs2_sync_fs(struct super_block *sb, int wait)
{
struct jffs2_sb_info *c = JFFS2_SB_INFO(sb);
down(&c->alloc_sem);
jffs2_flush_wbuf_pad(c);
up(&c->alloc_sem);
return 0;
}
static struct super_operations jffs2_super_operations = static struct super_operations jffs2_super_operations =
{ {
.alloc_inode = jffs2_alloc_inode, .alloc_inode = jffs2_alloc_inode,
...@@ -67,6 +77,7 @@ static struct super_operations jffs2_super_operations = ...@@ -67,6 +77,7 @@ static struct super_operations jffs2_super_operations =
.remount_fs = jffs2_remount_fs, .remount_fs = jffs2_remount_fs,
.clear_inode = jffs2_clear_inode, .clear_inode = jffs2_clear_inode,
.dirty_inode = jffs2_dirty_inode, .dirty_inode = jffs2_dirty_inode,
.sync_fs = jffs2_sync_fs,
}; };
static int jffs2_sb_compare(struct super_block *sb, void *data) static int jffs2_sb_compare(struct super_block *sb, void *data)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment