1
0
Files
linux/fs
Curt Wohlgemuth 0893ed458b ext4: sync the directory inode in ext4_sync_parent()
ext4 has taken the stance that, in the absence of a journal,
when an fsync/fdatasync of an inode is done, the parent
directory should be sync'ed if this inode entry is new.
ext4_sync_parent(), which implements this, does indeed sync
the dirent pages for parent directories, but it does not
sync the directory *inode*.  This patch fixes this.

Also now return error status from ext4_sync_parent().

I tested this using a power fail test, which panics a
machine running a file server getting requests from a
client.  Without this patch, on about every other test run,
the server is missing many, many files that had been synced.
With this patch, on > 6 runs, I see zero files being lost.

Google-Bug-Id: 4179519
Signed-off-by: Curt Wohlgemuth <curtw@google.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2011-04-10 22:05:31 -04:00
..
2011-02-25 11:12:37 -08:00
2011-03-10 08:52:07 +01:00
2011-03-10 08:52:07 +01:00
2011-03-10 13:22:34 -06:00
2011-03-10 08:52:07 +01:00
2011-03-10 08:52:07 +01:00
2011-01-14 09:23:36 -08:00
2011-01-12 20:03:42 -05:00
2011-01-07 17:50:26 +11:00
2011-03-17 14:02:57 +01:00
2011-01-07 17:50:26 +11:00
2011-03-22 16:01:49 -07:00
2011-03-10 08:52:07 +01:00
2011-01-07 17:50:26 +11:00
2011-03-21 00:16:09 -04:00
2011-03-15 02:21:44 -04:00
2011-01-07 17:50:27 +11:00
2011-03-27 19:30:19 -07:00
2011-03-21 00:16:08 -04:00
2011-03-10 08:52:26 +01:00
2011-03-21 01:10:41 -04:00
2011-01-07 17:50:33 +11:00
2011-03-14 09:15:28 -04:00