We should only align start offset of bio with defined IO_SIZE for below conditions: a. write IOs b. Out-place-update c. non-meta page
Signed-off-by: Chao Yu <[email protected]> --- fs/f2fs/data.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c index 1375fef11146..3e6b0cc5e36a 100644 --- a/fs/f2fs/data.c +++ b/fs/f2fs/data.c @@ -395,7 +395,9 @@ int f2fs_submit_page_mbio(struct f2fs_io_info *fio) __submit_merged_bio(io); alloc_new: if (io->bio == NULL) { - if ((fio->type == DATA || fio->type == NODE) && + if (!is_read && (fio->type == DATA || fio->type == NODE) && + bio_page->mapping != META_MAPPING(sbi) && + fio->new_blkaddr != fio->old_blkaddr && fio->new_blkaddr & F2FS_IO_SIZE_MASK(sbi)) { err = -EAGAIN; if (!is_read) -- 2.8.2.295.g3f1c1d0 ------------------------------------------------------------------------------ Announcing the Oxford Dictionaries API! The API offers world-renowned dictionary content that is easy and intuitive to access. Sign up for an account today to start using our lexical data to power your apps and projects. Get started today and enter our developer competition. http://sdm.link/oxford _______________________________________________ Linux-f2fs-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel
