diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c index e8d4158a32065bc5dad8ea9dd361f1fdc0f3e666..0f0187804eda2ab38ba4855cec22427e183509d6 100644 --- a/fs/f2fs/data.c +++ b/fs/f2fs/data.c @@ -1402,7 +1402,7 @@ static int f2fs_write_data_pages(struct address_space *mapping, diff = nr_pages_to_write(sbi, DATA, wbc); - if (!S_ISDIR(inode->i_mode)) { + if (!S_ISDIR(inode->i_mode) && wbc->sync_mode == WB_SYNC_ALL) { mutex_lock(&sbi->writepages); locked = true; }