1. 08 9月, 2016 2 次提交
    • C
      f2fs: support async discard · 275b66b0
      Chao Yu 提交于
      Like most filesystems, f2fs will issue discard command synchronously, so
      when user trigger fstrim through ioctl, multiple discard commands will be
      issued serially with sync mode, which makes poor performance.
      
      In this patch we try to support async discard, so that all discard
      commands can be issued and be waited for endio in batch to improve
      performance.
      Signed-off-by: NChao Yu <yuchao0@huawei.com>
      Signed-off-by: NJaegeuk Kim <jaegeuk@kernel.org>
      275b66b0
    • C
      f2fs: fix to do security initialization of encrypted inode with original filename · 9421d570
      Chao Yu 提交于
      When creating new inode, security_inode_init_security will be called for
      initializing security info related to the inode, and filename is passed to
      security module, it helps security module such as SElinux to know which
      rule or label could be applied for the inode with specified name.
      
      Previously, if new inode is created as an encrypted one, f2fs will transfer
      encrypted filename to security module which may fail the check of security
      policy belong to the inode. So in order to this issue, alter to transfer
      original unencrypted filename instead.
      Signed-off-by: NChao Yu <yuchao0@huawei.com>
      Signed-off-by: NJaegeuk Kim <jaegeuk@kernel.org>
      9421d570
  2. 30 8月, 2016 3 次提交
  3. 25 8月, 2016 1 次提交
  4. 19 8月, 2016 1 次提交
  5. 31 7月, 2016 1 次提交
  6. 21 7月, 2016 3 次提交
  7. 16 7月, 2016 3 次提交
    • C
      f2fs: reset default idle interval value · dcf25fe8
      Chao Yu 提交于
      The default value of idle interval is 2 mins, but for most time when
      screen shutdown, there are still operations during the 2 mins interval,
      and gc's sleep time is about 30 secs to 60 secs, so there is almost no
      chance for GC thread to do garbage collecting.
      
      Set default value of idle interval value from 2 mins to 5 secs for
      fixing.
      Signed-off-by: NChao Yu <yuchao0@huawei.com>
      Signed-off-by: NJaegeuk Kim <jaegeuk@kernel.org>
      dcf25fe8
    • C
      f2fs: fix to avoid data update racing between GC and DIO · 82e0a5aa
      Chao Yu 提交于
      Datas in file can be operated by GC and DIO simultaneously, so we will
      face race case as below:
      
      For write case:
      Thread A				Thread B
      - generic_file_direct_write
       - invalidate_inode_pages2_range
       - f2fs_direct_IO
        - do_blockdev_direct_IO
         - do_direct_IO
          - get_more_blocks
      					- f2fs_gc
      					 - do_garbage_collect
      					  - gc_data_segment
      					   - move_data_page
      					    - do_write_data_page
      					    migrate data block to new block address
         - dio_bio_submit
         update user data to old block address
      
      For read case:
      Thread A                                Thread B
      - generic_file_direct_write
       - invalidate_inode_pages2_range
       - f2fs_direct_IO
        - do_blockdev_direct_IO
         - do_direct_IO
          - get_more_blocks
      					- f2fs_balance_fs
      					 - f2fs_gc
      					  - do_garbage_collect
      					   - gc_data_segment
      					    - move_data_page
      					     - do_write_data_page
      					     migrate data block to new block address
      					  - write_checkpoint
      					   - do_checkpoint
      					    - clear_prefree_segments
      					     - f2fs_issue_discard
                                                   discard old block adress
         - dio_bio_submit
         update user buffer from obsolete block address
      
      In order to fix this, for one file, we should let DIO and GC getting exclusion
      against with each other.
      Signed-off-by: NChao Yu <yuchao0@huawei.com>
      Signed-off-by: NJaegeuk Kim <jaegeuk@kernel.org>
      82e0a5aa
    • J
      f2fs: disable extent_cache for fcollapse/finsert inodes · 5f281fab
      Jaegeuk Kim 提交于
      This reduces the elapsed time to do xfstests/generic/017.
      
      Before: 458 s
      After:  390 s
      Signed-off-by: NJaegeuk Kim <jaegeuk@kernel.org>
      5f281fab
  8. 09 7月, 2016 4 次提交
  9. 07 7月, 2016 3 次提交
  10. 16 6月, 2016 1 次提交
  11. 14 6月, 2016 1 次提交
  12. 09 6月, 2016 1 次提交
  13. 08 6月, 2016 3 次提交
  14. 03 6月, 2016 11 次提交
  15. 21 5月, 2016 1 次提交
  16. 19 5月, 2016 1 次提交