jfs: flush journal completely before releasing metadata inodes

This fixes a race during unmount. We need to not only make sure that
the journal is completely written, but that the metadata changes make
it to disk before releasing ipimap and ipbmap.

Signed-off-by: Dave Kleikamp <dave.kleikamp@oracle.com>
This commit is contained in:
Dave Kleikamp 2011-08-01 12:41:00 -05:00
parent 3da3f872aa
commit 1c8007b076

View File

@ -68,7 +68,7 @@ int jfs_umount(struct super_block *sb)
/* /*
* Wait for outstanding transactions to be written to log: * Wait for outstanding transactions to be written to log:
*/ */
jfs_flush_journal(log, 1); jfs_flush_journal(log, 2);
/* /*
* close fileset inode allocation map (aka fileset inode) * close fileset inode allocation map (aka fileset inode)
@ -146,7 +146,7 @@ int jfs_umount_rw(struct super_block *sb)
* *
* remove file system from log active file system list. * remove file system from log active file system list.
*/ */
jfs_flush_journal(log, 1); jfs_flush_journal(log, 2);
/* /*
* Make sure all metadata makes it to disk * Make sure all metadata makes it to disk