diff options
author | Dave Kleikamp <shaggy@austin.ibm.com> | 2005-05-02 14:25:08 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-05-03 01:23:53 -0400 |
commit | 1c6278295d6482edaaaef5faa64b18f17b3319b7 (patch) | |
tree | 226896c455d8a4996527c4a0ec5699956c657ec3 /fs/jfs/super.c | |
parent | 7fab479bebb96b1b4888bdae9b42e1fa9c5d3f38 (diff) |
[PATCH] JFS: Write journal sync points more often
This patch adds jfs_syncpt, which calls lmLogSync to write sync points
to the journal both in jfs_sync_fs and when sync barrier processing
completes.
lmLogSync accomplishes two things: 1) it pushes logged-but-dirty
metadata pages to disk, and 2) it writes a sync record to the journal
so that jfs_fsck doesn't need to replay more transactions than is
necessary.
Signed-off-by: Dave Kleikamp <shaggy@austin.ibm.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'fs/jfs/super.c')
-rw-r--r-- | fs/jfs/super.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/jfs/super.c b/fs/jfs/super.c index 0812005364a1..5e774ed7fb64 100644 --- a/fs/jfs/super.c +++ b/fs/jfs/super.c | |||
@@ -558,8 +558,10 @@ static int jfs_sync_fs(struct super_block *sb, int wait) | |||
558 | struct jfs_log *log = JFS_SBI(sb)->log; | 558 | struct jfs_log *log = JFS_SBI(sb)->log; |
559 | 559 | ||
560 | /* log == NULL indicates read-only mount */ | 560 | /* log == NULL indicates read-only mount */ |
561 | if (log) | 561 | if (log) { |
562 | jfs_flush_journal(log, wait); | 562 | jfs_flush_journal(log, wait); |
563 | jfs_syncpt(log); | ||
564 | } | ||
563 | 565 | ||
564 | return 0; | 566 | return 0; |
565 | } | 567 | } |