1. 12 2月, 2015 1 次提交
  2. 10 1月, 2015 2 次提交
  3. 26 11月, 2014 2 次提交
  4. 24 11月, 2014 1 次提交
  5. 19 11月, 2014 1 次提交
  6. 12 11月, 2014 1 次提交
    • J
      f2fs: convert inline_data when i_size becomes large · 92dffd01
      Jaegeuk Kim 提交于
      If i_size becomes large outside of MAX_INLINE_DATA, we shoud convert the inode.
      Otherwise, we can make some dirty pages during the truncation, and those pages
      will be written through f2fs_write_data_page.
      At that moment, the inode has still inline_data, so that it tries to write non-
      zero pages into inline_data area.
      Signed-off-by: NJaegeuk Kim <jaegeuk@kernel.org>
      92dffd01
  7. 11 11月, 2014 1 次提交
  8. 05 11月, 2014 1 次提交
    • J
      f2fs: revisit inline_data to avoid data races and potential bugs · b3d208f9
      Jaegeuk Kim 提交于
      This patch simplifies the inline_data usage with the following rule.
      1. inline_data is set during the file creation.
      2. If new data is requested to be written ranges out of inline_data,
       f2fs converts that inode permanently.
      3. There is no cases which converts non-inline_data inode to inline_data.
      4. The inline_data flag should be changed under inode page lock.
      Signed-off-by: NJaegeuk Kim <jaegeuk@kernel.org>
      b3d208f9
  9. 04 11月, 2014 14 次提交
  10. 07 10月, 2014 1 次提交
    • J
      f2fs: support atomic writes · 88b88a66
      Jaegeuk Kim 提交于
      This patch introduces a very limited functionality for atomic write support.
      In order to support atomic write, this patch adds two ioctls:
       o F2FS_IOC_START_ATOMIC_WRITE
       o F2FS_IOC_COMMIT_ATOMIC_WRITE
      
      The database engine should be aware of the following sequence.
      1. open
       -> ioctl(F2FS_IOC_START_ATOMIC_WRITE);
      2. writes
        : all the written data will be treated as atomic pages.
      3. commit
       -> ioctl(F2FS_IOC_COMMIT_ATOMIC_WRITE);
        : this flushes all the data blocks to the disk, which will be shown all or
        nothing by f2fs recovery procedure.
      4. repeat to #2.
      
      The IO pattens should be:
      
        ,- START_ATOMIC_WRITE                  ,- COMMIT_ATOMIC_WRITE
       CP | D D D D D D | FSYNC | D D D D | FSYNC ...
                            `- COMMIT_ATOMIC_WRITE
      Signed-off-by: NJaegeuk Kim <jaegeuk@kernel.org>
      88b88a66
  11. 10 9月, 2014 1 次提交
  12. 04 9月, 2014 1 次提交
  13. 22 8月, 2014 2 次提交
  14. 20 8月, 2014 2 次提交
  15. 29 7月, 2014 1 次提交
  16. 07 5月, 2014 4 次提交
  17. 02 4月, 2014 1 次提交
  18. 14 1月, 2014 1 次提交
  19. 06 1月, 2014 2 次提交
    • C
      f2fs: avoid to read inline data except first page · 04a17fb1
      Chao Yu 提交于
      Here is a case which could read inline page data not from first page.
      
      1. write inline data
      2. lseek to offset 4096
      3. read 4096 bytes from offset 4096
      	(read_inline_data read inline data page to non-first page,
      	And previously VFS has add this page to page cache)
      4. ftruncate offset 8192
      5. read 4096 bytes from offset 4096
      	(we meet this updated page with inline data in cache)
      
      So we should leave this page with inited data and uptodate flag
      for this case.
      
      Change log from v1:
       o fix a deadlock bug
      Signed-off-by: NChao Yu <chao2.yu@samsung.com>
      Signed-off-by: NJaegeuk Kim <jaegeuk.kim@samsung.com>
      04a17fb1
    • C
      f2fs: avoid to left uninitialized data in page when read inline data · 18309aaa
      Chao Yu 提交于
      Change log from v1:
       o reduce unneeded memset in __f2fs_convert_inline_data
      
      >From 58796be2bd2becbe8d52305210fb2a64e7dd80b6 Mon Sep 17 00:00:00 2001
      From: Chao Yu <chao2.yu@samsung.com>
      Date: Mon, 30 Dec 2013 09:21:33 +0800
      Subject: [PATCH] f2fs: avoid to left uninitialized data in page when read
       inline data
      
      We left uninitialized data in the tail of page when we read an inline data
      page. So let's initialize left part of the page excluding inline data region.
      Signed-off-by: NChao Yu <chao2.yu@samsung.com>
      Signed-off-by: NJaegeuk Kim <jaegeuk.kim@samsung.com>
      18309aaa