diff options
author | Hou Pengyang <houpengyang@huawei.com> | 2017-02-23 04:18:05 -0500 |
---|---|---|
committer | Jaegeuk Kim <jaegeuk@kernel.org> | 2017-02-27 12:59:50 -0500 |
commit | e15882b6c6caff427fe387e878e2f23de58c053b (patch) | |
tree | 09c855e0574eaabf733a980dd742a2c562691be4 | |
parent | 77190e1f313f5ef18a3742aa4c5b790456a5825b (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.c | 8 | ||||
-rw-r--r-- | fs/f2fs/file.c | 2 |
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 | ||
512 | int f2fs_get_block(struct dnode_of_data *dn, pgoff_t index) | 512 | int 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; |