kernel_optimize_test/fs/f2fs
Jaegeuk Kim b6a245eb34 f2fs: don't need to wait for node writes for atomic write
We have a node chain to serialize node block writes, so if any IOs for
node block writes are reordered, we'll get broken node chain. IOWs,
roll-forward recovery will see all or none node blocks given fsync
mark.

E.g.,
Node chain consists of:
 N1 -> N2 -> N3 -> NFSYNC -> N1' -> N2' -> N'FSYNC

Reordered to:
1) N1 -> N2 -> N3 -> N2' -> NFSYNC -> N'FSYNC -> power-cut
2) N1 -> N2 -> N3 -> N1' -> NFSYNC -> power-cut
3) N1 -> N2 -> NFSYNC -> N1' -> N'FSYNC -> N3 -> power-cut
4) N1 -> NFSYNC -> N1' -> N2' -> N'FSYNC -> N3 -> power-cut

Roll-forward recovery can proceed to:
1) N1 -> N2 -> N3 -> NFSYNC -> X
2) N1 -> N2 -> N3 -> NFSYNC -> N1' -> X
3) N1 -> N2 -> N3 -> FSYNC -> N1' -> X
4) N1 -> X

Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
2017-07-31 16:48:34 -07:00
..
acl.c f2fs: preserve i_mode if __f2fs_set_acl() fails 2017-07-28 17:48:54 -07:00
acl.h
checkpoint.c f2fs: avoid cpu lockup 2017-07-17 19:23:18 -07:00
data.c f2fs: enhance on-disk inode structure scalability 2017-07-31 16:48:30 -07:00
debug.c
dir.c
extent_cache.c
f2fs.h f2fs: avoid naming confusion of sysfs init 2017-07-31 16:48:33 -07:00
file.c f2fs: don't need to wait for node writes for atomic write 2017-07-31 16:48:34 -07:00
gc.c f2fs: enhance on-disk inode structure scalability 2017-07-31 16:48:30 -07:00
gc.h
hash.c
inline.c f2fs: make max inline size changeable 2017-07-31 16:48:29 -07:00
inode.c f2fs: support project quota 2017-07-31 16:48:32 -07:00
Kconfig
Makefile
namei.c f2fs: support project quota 2017-07-31 16:48:32 -07:00
node.c f2fs: support project quota 2017-07-31 16:48:32 -07:00
node.h
recovery.c f2fs: enhance on-disk inode structure scalability 2017-07-31 16:48:30 -07:00
segment.c f2fs: make background threads of f2fs being aware of freezing 2017-07-31 16:47:27 -07:00
segment.h
shrinker.c
super.c f2fs: avoid naming confusion of sysfs init 2017-07-31 16:48:33 -07:00
sysfs.c f2fs: avoid naming confusion of sysfs init 2017-07-31 16:48:33 -07:00
trace.c
trace.h
xattr.c f2fs: remove unused input parameter 2017-07-26 19:34:30 -07:00
xattr.h