1. 24 11月, 2016 2 次提交
  2. 08 10月, 2016 1 次提交
  3. 28 9月, 2016 1 次提交
  4. 22 9月, 2016 1 次提交
  5. 15 9月, 2016 1 次提交
  6. 14 9月, 2016 1 次提交
  7. 13 9月, 2016 2 次提交
  8. 10 9月, 2016 1 次提交
  9. 08 9月, 2016 2 次提交
  10. 30 8月, 2016 1 次提交
  11. 19 8月, 2016 2 次提交
  12. 21 7月, 2016 1 次提交
  13. 19 7月, 2016 1 次提交
  14. 16 7月, 2016 3 次提交
  15. 09 7月, 2016 2 次提交
  16. 07 7月, 2016 1 次提交
  17. 14 6月, 2016 1 次提交
  18. 08 6月, 2016 1 次提交
  19. 03 6月, 2016 5 次提交
  20. 21 5月, 2016 2 次提交
  21. 19 5月, 2016 1 次提交
  22. 12 5月, 2016 3 次提交
  23. 08 5月, 2016 3 次提交
    • J
      f2fs: read node blocks ahead when truncating blocks · 79344efb
      Jaegeuk Kim 提交于
      This patch enables reading node blocks in advance when truncating large
      data blocks.
      
       > time rm $MNT/testfile (500GB) after drop_cachees
      Before : 9.422 s
      After  : 4.821 s
      Reported-by: NStephen Bates <stephen.bates@microsemi.com>
      Signed-off-by: NJaegeuk Kim <jaegeuk@kernel.org>
      79344efb
    • J
      f2fs: fallocate data blocks in single locked node page · e12dd7bd
      Jaegeuk Kim 提交于
      This patch is to improve the expand_inode speed in fallocate by allocating
      data blocks as many as possible in single locked node page.
      
      In SSD,
       # time fallocate -l 500G $MNT/testfile
      
      Before : 1m 33.410 s
      After  : 24.758 s
      Reported-by: NStephen Bates <stephen.bates@microsemi.com>
      Signed-off-by: NJaegeuk Kim <jaegeuk@kernel.org>
      e12dd7bd
    • C
      f2fs: avoid panic when truncating to max filesize · 09210c97
      Chao Yu 提交于
      The following panic occurs when truncating inode which has inline
      xattr to max filesize.
      
      [<ffffffffa013d3be>] get_dnode_of_data+0x4e/0x580 [f2fs]
      [<ffffffffa013aca1>] ? read_node_page+0x51/0x90 [f2fs]
      [<ffffffffa013ad99>] ? get_node_page.part.34+0xb9/0x170 [f2fs]
      [<ffffffffa01235b1>] truncate_blocks+0x131/0x3f0 [f2fs]
      [<ffffffffa01238e3>] f2fs_truncate+0x73/0x100 [f2fs]
      [<ffffffffa01239d2>] f2fs_setattr+0x62/0x2a0 [f2fs]
      [<ffffffff811a72c8>] notify_change+0x158/0x300
      [<ffffffff8118a42b>] do_truncate+0x6b/0xa0
      [<ffffffff8118e539>] ? __sb_start_write+0x49/0x100
      [<ffffffff8118a798>] do_sys_ftruncate.constprop.12+0x118/0x170
      [<ffffffff8118a82e>] SyS_ftruncate+0xe/0x10
      [<ffffffff8169efcf>] tracesys+0xe1/0xe6
      [<ffffffffa0139ae0>] get_node_path+0x210/0x220 [f2fs]
       <ffff880206a89ce8>
      --[ end trace 5fea664dfbcc6625 ]---
      
      The reason is truncate_blocks tries to truncate all node and data blocks
      start from specified block offset with value of (max filesize / block
      size), but actually, our valid max block offset is (max filesize / block
      size) - 1, so f2fs detects such invalid block offset with BUG_ON in
      truncation path.
      
      This patch lets f2fs skip truncating data which is exceeding max
      filesize.
      Signed-off-by: NChao Yu <yuchao0@huawei.com>
      Signed-off-by: NJaegeuk Kim <jaegeuk@kernel.org>
      09210c97
  24. 02 5月, 2016 1 次提交
    • C
      fs: simplify the generic_write_sync prototype · e2592217
      Christoph Hellwig 提交于
      The kiocb already has the new position, so use that.  The only interesting
      case is AIO, where we currently don't bother updating ki_pos.  We're about
      to free the kiocb after we're done, so we might as well update it to make
      everyone's life simpler.
      
      While we're at it also return the bytes written argument passed in if
      we were successful so that the boilerplate error switch code in the
      callers can go away.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      e2592217