summaryrefslogtreecommitdiff
path: root/fs/f2fs/f2fs.h
diff options
context:
space:
mode:
authorJaegeuk Kim <jaegeuk@kernel.org>2016-06-04 21:21:28 (GMT)
committerJaegeuk Kim <jaegeuk@kernel.org>2016-06-08 17:25:50 (GMT)
commit7dfeaa32204841aade36ba243a1cb45c54f42c15 (patch)
tree10e5a6d48e85bdba1158e6a1b599812fda3edd5e /fs/f2fs/f2fs.h
parent7f319975ccea80cf03377ff579b0a9e613308570 (diff)
downloadlinux-7dfeaa32204841aade36ba243a1cb45c54f42c15.tar.xz
f2fs: avoid reverse IO order for NODE and DATA
There is a data race between allocate_data_block() and f2fs_sbumit_page_mbio(), which incur unnecessary reversed bio submission. Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Diffstat (limited to 'fs/f2fs/f2fs.h')
-rw-r--r--fs/f2fs/f2fs.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h
index e21f9df..24c7cde 100644
--- a/fs/f2fs/f2fs.h
+++ b/fs/f2fs/f2fs.h
@@ -766,6 +766,7 @@ struct f2fs_sb_info {
/* for bio operations */
struct f2fs_bio_info read_io; /* for read bios */
struct f2fs_bio_info write_io[NR_PAGE_TYPE]; /* for write bios */
+ struct mutex wio_mutex[NODE + 1]; /* bio ordering for NODE/DATA */
/* for checkpoint */
struct f2fs_checkpoint *ckpt; /* raw checkpoint pointer */