aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHou Pengyang <houpengyang@huawei.com>2017-02-23 04:18:05 -0500
committerJaegeuk Kim <jaegeuk@kernel.org>2017-02-27 12:59:50 -0500
commite15882b6c6caff427fe387e878e2f23de58c053b (patch)
tree09c855e0574eaabf733a980dd742a2c562691be4
parent77190e1f313f5ef18a3742aa4c5b790456a5825b (diff)
f2fs: init local extent_info to avoid stale stack info in tp
To avoid such stale(fops, blk, len) info in f2fs_lookup_extent_tree_end tp dio-23095 [005] ...1 17878.856859: f2fs_lookup_extent_tree_end: dev = (259,30), ino = 856, pgofs = 0, ext_info(fofs: 3441207040, blk: 4294967232, len: 3481143808) Signed-off-by: Hou Pengyang <houpengyang@huawei.com> Reviewed-by: Chao Yu <yuchao0@huawei.com> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
-rw-r--r--fs/f2fs/data.c8
-rw-r--r--fs/f2fs/file.c2
2 files changed, 5 insertions, 5 deletions
diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c
index 5f3bc98a387d..f72493d8c8e4 100644
--- a/fs/f2fs/data.c
+++ b/fs/f2fs/data.c
@@ -511,7 +511,7 @@ int f2fs_reserve_block(struct dnode_of_data *dn, pgoff_t index)
511 511
512int f2fs_get_block(struct dnode_of_data *dn, pgoff_t index) 512int f2fs_get_block(struct dnode_of_data *dn, pgoff_t index)
513{ 513{
514 struct extent_info ei; 514 struct extent_info ei = {0,0,0};
515 struct inode *inode = dn->inode; 515 struct inode *inode = dn->inode;
516 516
517 if (f2fs_lookup_extent_cache(inode, index, &ei)) { 517 if (f2fs_lookup_extent_cache(inode, index, &ei)) {
@@ -528,7 +528,7 @@ struct page *get_read_data_page(struct inode *inode, pgoff_t index,
528 struct address_space *mapping = inode->i_mapping; 528 struct address_space *mapping = inode->i_mapping;
529 struct dnode_of_data dn; 529 struct dnode_of_data dn;
530 struct page *page; 530 struct page *page;
531 struct extent_info ei; 531 struct extent_info ei = {0,0,0};
532 int err; 532 int err;
533 struct f2fs_io_info fio = { 533 struct f2fs_io_info fio = {
534 .sbi = F2FS_I_SB(inode), 534 .sbi = F2FS_I_SB(inode),
@@ -803,7 +803,7 @@ int f2fs_map_blocks(struct inode *inode, struct f2fs_map_blocks *map,
803 int err = 0, ofs = 1; 803 int err = 0, ofs = 1;
804 unsigned int ofs_in_node, last_ofs_in_node; 804 unsigned int ofs_in_node, last_ofs_in_node;
805 blkcnt_t prealloc; 805 blkcnt_t prealloc;
806 struct extent_info ei; 806 struct extent_info ei = {0,0,0};
807 block_t blkaddr; 807 block_t blkaddr;
808 808
809 if (!maxblocks) 809 if (!maxblocks)
@@ -1667,7 +1667,7 @@ static int prepare_write_begin(struct f2fs_sb_info *sbi,
1667 struct dnode_of_data dn; 1667 struct dnode_of_data dn;
1668 struct page *ipage; 1668 struct page *ipage;
1669 bool locked = false; 1669 bool locked = false;
1670 struct extent_info ei; 1670 struct extent_info ei = {0,0,0};
1671 int err = 0; 1671 int err = 0;
1672 1672
1673 /* 1673 /*
diff --git a/fs/f2fs/file.c b/fs/f2fs/file.c
index 120164815030..36c156557bb1 100644
--- a/fs/f2fs/file.c
+++ b/fs/f2fs/file.c
@@ -1877,7 +1877,7 @@ static int f2fs_defragment_range(struct f2fs_sb_info *sbi,
1877{ 1877{
1878 struct inode *inode = file_inode(filp); 1878 struct inode *inode = file_inode(filp);
1879 struct f2fs_map_blocks map = { .m_next_pgofs = NULL }; 1879 struct f2fs_map_blocks map = { .m_next_pgofs = NULL };
1880 struct extent_info ei; 1880 struct extent_info ei = {0,0,0};
1881 pgoff_t pg_start, pg_end; 1881 pgoff_t pg_start, pg_end;
1882 unsigned int blk_per_seg = sbi->blocks_per_seg; 1882 unsigned int blk_per_seg = sbi->blocks_per_seg;
1883 unsigned int total = 0, sec_num; 1883 unsigned int total = 0, sec_num;