Skip to content

Commit

Permalink
f2fs: preallocate blocks for encrypted file
Browse files Browse the repository at this point in the history
This patch allow preallocates data blocks for buffered aio writes
in encrypted file.

Signed-off-by: Yunlei He <heyunlei@huawei.com>
Reviewed-by: Chao Yu <yuchao0@huawei.com>
[Jaegeuk Kim: fix to avoid BUG_ON]
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
  • Loading branch information
Yunlei He authored and Jaegeuk Kim committed Sep 22, 2016
1 parent 5bc994a commit 5d4c0af
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 8 deletions.
6 changes: 1 addition & 5 deletions fs/f2fs/data.c
Original file line number Diff line number Diff line change
Expand Up @@ -639,9 +639,6 @@ ssize_t f2fs_preallocate_blocks(struct kiocb *iocb, struct iov_iter *from)

map.m_next_pgofs = NULL;

if (f2fs_encrypted_inode(inode))
return 0;

if (iocb->ki_flags & IOCB_DIRECT) {
ret = f2fs_convert_inline_inode(inode);
if (ret)
Expand Down Expand Up @@ -1532,8 +1529,7 @@ static int prepare_write_begin(struct f2fs_sb_info *sbi,
* we already allocated all the blocks, so we don't need to get
* the block addresses when there is no need to fill the page.
*/
if (!f2fs_has_inline_data(inode) && !f2fs_encrypted_inode(inode) &&
len == PAGE_SIZE)
if (!f2fs_has_inline_data(inode) && len == PAGE_SIZE)
return 0;

if (f2fs_has_inline_data(inode) ||
Expand Down
4 changes: 1 addition & 3 deletions fs/f2fs/segment.c
Original file line number Diff line number Diff line change
Expand Up @@ -1675,11 +1675,9 @@ void f2fs_wait_on_encrypted_page_writeback(struct f2fs_sb_info *sbi,
{
struct page *cpage;

if (blkaddr == NEW_ADDR)
if (blkaddr == NEW_ADDR || blkaddr == NULL_ADDR)
return;

f2fs_bug_on(sbi, blkaddr == NULL_ADDR);

cpage = find_lock_page(META_MAPPING(sbi), blkaddr);
if (cpage) {
f2fs_wait_on_page_writeback(cpage, DATA, true);
Expand Down

0 comments on commit 5d4c0af

Please sign in to comment.