summaryrefslogtreecommitdiffstats
path: root/fs/f2fs/super.c
diff options
context:
space:
mode:
authorJaegeuk Kim <jaegeuk.kim@samsung.com>2013-11-19 04:47:22 +0100
committerJaegeuk Kim <jaegeuk.kim@samsung.com>2013-12-23 02:18:01 +0100
commit1ff7bd3bb5f7f57bc7418ee6ed12f3ae217e4e9c (patch)
tree13501b9baf93ba8ba9f35355fc8b37a6c2da30b8 /fs/f2fs/super.c
parentf2fs: disable the extent cache ops on high fragmented files (diff)
downloadlinux-1ff7bd3bb5f7f57bc7418ee6ed12f3ae217e4e9c.tar.xz
linux-1ff7bd3bb5f7f57bc7418ee6ed12f3ae217e4e9c.zip
f2fs: introduce a bio array for per-page write bios
The f2fs has three bio types, NODE, DATA, and META, and manages some data structures per each bio types. The codes are a little bit messy, thus, this patch introduces a bio array which groups individual data structures as follows. struct f2fs_bio_info { struct bio *bio; /* bios to merge */ sector_t last_block_in_bio; /* last block number */ struct mutex io_mutex; /* mutex for bio */ }; struct f2fs_sb_info { ... struct f2fs_bio_info write_io[NR_PAGE_TYPE]; /* for write bios */ ... }; The code changes from this new data structure are trivial. Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
Diffstat (limited to 'fs/f2fs/super.c')
-rw-r--r--fs/f2fs/super.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
index e194578b3594..8c677e958deb 100644
--- a/fs/f2fs/super.c
+++ b/fs/f2fs/super.c
@@ -879,7 +879,7 @@ static int f2fs_fill_super(struct super_block *sb, void *data, int silent)
spin_lock_init(&sbi->stat_lock);
for (i = 0; i < NR_PAGE_TYPE; i++)
- mutex_init(&sbi->write_mutex[i]);
+ mutex_init(&sbi->write_io[i].io_mutex);
init_rwsem(&sbi->cp_rwsem);
init_waitqueue_head(&sbi->cp_wait);