summaryrefslogtreecommitdiffstats
path: root/fs/f2fs
diff options
context:
space:
mode:
authorJaegeuk Kim <jaegeuk@kernel.org>2015-03-12 04:27:25 +0100
committerJaegeuk Kim <jaegeuk@kernel.org>2015-04-11 00:08:44 +0200
commit3402e87cfb5e762f9c95071bf4a2ad65fd9392a2 (patch)
tree30b99cec79105690ee823e06c02595b3fc8a0e86 /fs/f2fs
parentf2fs: set SBI_NEED_FSCK when encountering exception in recovery (diff)
downloadlinux-3402e87cfb5e762f9c95071bf4a2ad65fd9392a2.tar.xz
linux-3402e87cfb5e762f9c95071bf4a2ad65fd9392a2.zip
f2fs: set buffer_new when new blocks are allocated
This patch modifies to call set_buffer_new, if new blocks are allocated. Reviewed-by: Chao Yu <chao2.yu@samsung.com> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Diffstat (limited to 'fs/f2fs')
-rw-r--r--fs/f2fs/data.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c
index ba70a78a396f..4a416e74bb2a 100644
--- a/fs/f2fs/data.c
+++ b/fs/f2fs/data.c
@@ -257,7 +257,7 @@ static void f2fs_map_bh(struct super_block *sb, pgoff_t pgofs,
unsigned int blkbits = sb->s_blocksize_bits;
size_t count;
- set_buffer_new(bh_result);
+ clear_buffer_new(bh_result);
map_bh(bh_result, sb, ei->blk + pgofs - ei->fofs);
count = ei->fofs + ei->len - pgofs;
if (count < (UINT_MAX >> blkbits))
@@ -1139,7 +1139,7 @@ static int __get_data_block(struct inode *inode, sector_t iblock,
goto put_out;
if (dn.data_blkaddr != NULL_ADDR) {
- set_buffer_new(bh_result);
+ clear_buffer_new(bh_result);
map_bh(bh_result, inode->i_sb, dn.data_blkaddr);
} else if (create) {
err = __allocate_data_block(&dn);
@@ -1184,6 +1184,7 @@ get_next:
if (err)
goto sync_out;
allocated = true;
+ set_buffer_new(bh_result);
blkaddr = dn.data_blkaddr;
}
/* Give more consecutive addresses for the readahead */