f2fs: support file defragment
[deliverable/linux.git] / fs / f2fs / data.c
index 0cc8de2839c41b5ea95c1bbf54b91f376013c8c8..c3e1ffa0c8d6461c7d31e1d86c85d58f579af15b 100644 (file)
@@ -566,7 +566,7 @@ out:
  *     b. do not use extent cache for better performance
  *     c. give the block addresses to blockdev
  */
-static int f2fs_map_blocks(struct inode *inode, struct f2fs_map_blocks *map,
+int f2fs_map_blocks(struct inode *inode, struct f2fs_map_blocks *map,
                                                int create, int flag)
 {
        unsigned int maxblocks = map->m_len;
@@ -1355,6 +1355,10 @@ static int f2fs_write_data_pages(struct address_space *mapping,
                        available_free_memory(sbi, DIRTY_DENTS))
                goto skip_write;
 
+       /* skip writing during file defragment */
+       if (is_inode_flag_set(F2FS_I(inode), FI_DO_DEFRAG))
+               goto skip_write;
+
        /* during POR, we don't need to trigger writepage at all. */
        if (unlikely(is_sbi_flag_set(sbi, SBI_POR_DOING)))
                goto skip_write;
This page took 0.024114 seconds and 5 git commands to generate.