linux_dsm_epyc7002/fs/f2fs
Chao Yu d260081ccf f2fs: change recovery policy of xattr node block
Currently, if we call fsync after updating the xattr date belongs to the
file, f2fs needs to trigger checkpoint to keep xattr data consistent. But,
this policy cause low performance as checkpoint will block most foreground
operations and cause unneeded and unrelated IOs around checkpoint.

This patch will reuse regular file recovery policy for xattr node block,
so, we change to write xattr node block tagged with fsync flag to warm
area instead of cold area, and during recovery, we search warm node chain
for fsynced xattr block, and do the recovery.

So, for below application IO pattern, performance can be improved
obviously:
- touch file
- create/update/delete xattr entry in file
- fsync file

Signed-off-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
2017-02-23 10:10:52 -08:00
..
acl.c f2fs: keep dirty inodes selectively for checkpoint 2016-11-23 12:11:08 -08:00
acl.h f2fs: remove dead code f2fs_check_acl 2016-09-14 16:52:36 -07:00
checkpoint.c f2fs: check last page index in cached bio to decide submission 2017-02-23 10:10:48 -08:00
data.c f2fs: remove preflush for nobarrier case 2017-02-23 10:10:48 -08:00
debug.c f2fs: show # of APPEND and UPDATE inodes 2017-02-22 20:54:53 -08:00
dir.c f2fs: report error of f2fs_fill_dentries 2016-11-23 12:11:12 -08:00
extent_cache.c f2fs: use rb_entry_safe 2017-01-29 12:46:01 +09:00
f2fs.h f2fs: change recovery policy of xattr node block 2017-02-23 10:10:52 -08:00
file.c f2fs: change recovery policy of xattr node block 2017-02-23 10:10:52 -08:00
gc.c f2fs: introduce FI_ATOMIC_COMMIT 2017-02-22 18:48:48 -08:00
gc.h f2fs: detect idle time depending on user behavior 2016-01-11 15:56:37 -08:00
hash.c f2fs: introduce dot and dotdot name check 2015-05-28 15:41:34 -07:00
inline.c for-f2fs-4.10 2016-12-14 09:07:36 -08:00
inode.c f2fs: record inode updating status correctly 2016-11-23 12:11:25 -08:00
Kconfig f2fs: add mount option to select fault injection ratio 2016-05-07 10:32:22 -07:00
Makefile fs crypto: move per-file encryption from f2fs tree to fs/crypto 2016-03-17 21:19:33 -07:00
namei.c f2fs: don't allow encrypted operations without keys 2017-01-29 12:46:01 +09:00
node.c f2fs: change recovery policy of xattr node block 2017-02-23 10:10:52 -08:00
node.h f2fs: change recovery policy of xattr node block 2017-02-23 10:10:52 -08:00
recovery.c f2fs: change recovery policy of xattr node block 2017-02-23 10:10:52 -08:00
segment.c f2fs: check last page index in cached bio to decide submission 2017-02-23 10:10:48 -08:00
segment.h f2fs: check in-memory sit version bitmap 2017-02-22 18:48:50 -08:00
shrinker.c f2fs: avoid casted negative value as shrink count 2016-11-23 12:11:03 -08:00
super.c f2fs: super: constify fscrypt_operations structure 2017-02-23 10:10:51 -08:00
trace.c f2fs: use bio op accessors 2016-06-07 13:41:38 -06:00
trace.h f2fs: add sbi and page pointer in f2fs_io_info 2015-05-28 15:41:32 -07:00
xattr.c f2fs: change recovery policy of xattr node block 2017-02-23 10:10:52 -08:00
xattr.h f2fs: enhance lookup xattr 2017-02-22 20:24:51 -08:00