From 6d2d3b28f64edfe05107ddd5947512661c0f8f00 Mon Sep 17 00:00:00 2001
From: Alberto Bertogli <albertito@blitiri.com.ar>
Date: Fri, 17 Apr 2009 18:21:06 -0300
Subject: [PATCH 28/38] Synchonize the journal directory after every unlink()

This reduces performance in a significant way, but it's safe. Otherwise,
the unlink() could have returned success but don't really make it to the
disk.

Signed-off-by: Alberto Bertogli <albertito@blitiri.com.ar>
---
 libjio/journal.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/libjio/journal.c b/libjio/journal.c
index 550e1c3..be9e04b 100644
--- a/libjio/journal.c
+++ b/libjio/journal.c
@@ -321,6 +321,9 @@ int journal_free(struct journal_op *jop)
 		}
 	}
 
+	if (fsync_dir(jop->fs->jdirfd) != 0)
+		goto exit;
+
 	fiu_exit_on("jio/commit/pre_ok_free_tid");
 	free_tid(jop->fs, jop->id);
 
-- 
1.6.2.2.646.gb214


