Commit 19b303d8 authored by Zheng Liu's avatar Zheng Liu Committed by Theodore Ts'o

ext4: print map->m_flags in trace_ext4_ext/ind_map_blocks_exit

When we use trace_ext4_ext/ind_map_blocks_exit, print the value of
map->m_flags in order that we can understand the extent's current
status.
Reviewed-by: default avatarLukas Czerner <lczerner@redhat.com>
Signed-off-by: default avatarZheng Liu <wenqing.lz@taobao.com>
Signed-off-by: default avatar"Theodore Ts'o" <tytso@mit.edu>
parent b5645534
...@@ -4284,8 +4284,7 @@ int ext4_ext_map_blocks(handle_t *handle, struct inode *inode, ...@@ -4284,8 +4284,7 @@ int ext4_ext_map_blocks(handle_t *handle, struct inode *inode,
kfree(path); kfree(path);
} }
trace_ext4_ext_map_blocks_exit(inode, map->m_lblk, trace_ext4_ext_map_blocks_exit(inode, map, err ? err : allocated);
newblock, map->m_len, err ? err : allocated);
return err ? err : allocated; return err ? err : allocated;
} }
......
...@@ -755,8 +755,7 @@ int ext4_ind_map_blocks(handle_t *handle, struct inode *inode, ...@@ -755,8 +755,7 @@ int ext4_ind_map_blocks(handle_t *handle, struct inode *inode,
partial--; partial--;
} }
out: out:
trace_ext4_ind_map_blocks_exit(inode, map->m_lblk, trace_ext4_ind_map_blocks_exit(inode, map, err);
map->m_pblk, map->m_len, err);
return err; return err;
} }
......
...@@ -1519,10 +1519,9 @@ DEFINE_EVENT(ext4__map_blocks_enter, ext4_ind_map_blocks_enter, ...@@ -1519,10 +1519,9 @@ DEFINE_EVENT(ext4__map_blocks_enter, ext4_ind_map_blocks_enter,
); );
DECLARE_EVENT_CLASS(ext4__map_blocks_exit, DECLARE_EVENT_CLASS(ext4__map_blocks_exit,
TP_PROTO(struct inode *inode, ext4_lblk_t lblk, TP_PROTO(struct inode *inode, struct ext4_map_blocks *map, int ret),
ext4_fsblk_t pblk, unsigned int len, int ret),
TP_ARGS(inode, lblk, pblk, len, ret), TP_ARGS(inode, map, ret),
TP_STRUCT__entry( TP_STRUCT__entry(
__field( dev_t, dev ) __field( dev_t, dev )
...@@ -1530,37 +1529,37 @@ DECLARE_EVENT_CLASS(ext4__map_blocks_exit, ...@@ -1530,37 +1529,37 @@ DECLARE_EVENT_CLASS(ext4__map_blocks_exit,
__field( ext4_fsblk_t, pblk ) __field( ext4_fsblk_t, pblk )
__field( ext4_lblk_t, lblk ) __field( ext4_lblk_t, lblk )
__field( unsigned int, len ) __field( unsigned int, len )
__field( unsigned int, flags )
__field( int, ret ) __field( int, ret )
), ),
TP_fast_assign( TP_fast_assign(
__entry->dev = inode->i_sb->s_dev; __entry->dev = inode->i_sb->s_dev;
__entry->ino = inode->i_ino; __entry->ino = inode->i_ino;
__entry->pblk = pblk; __entry->pblk = map->m_pblk;
__entry->lblk = lblk; __entry->lblk = map->m_lblk;
__entry->len = len; __entry->len = map->m_len;
__entry->flags = map->m_flags;
__entry->ret = ret; __entry->ret = ret;
), ),
TP_printk("dev %d,%d ino %lu lblk %u pblk %llu len %u ret %d", TP_printk("dev %d,%d ino %lu lblk %u pblk %llu len %u flags %x ret %d",
MAJOR(__entry->dev), MINOR(__entry->dev), MAJOR(__entry->dev), MINOR(__entry->dev),
(unsigned long) __entry->ino, (unsigned long) __entry->ino,
__entry->lblk, __entry->pblk, __entry->lblk, __entry->pblk,
__entry->len, __entry->ret) __entry->len, __entry->flags, __entry->ret)
); );
DEFINE_EVENT(ext4__map_blocks_exit, ext4_ext_map_blocks_exit, DEFINE_EVENT(ext4__map_blocks_exit, ext4_ext_map_blocks_exit,
TP_PROTO(struct inode *inode, ext4_lblk_t lblk, TP_PROTO(struct inode *inode, struct ext4_map_blocks *map, int ret),
ext4_fsblk_t pblk, unsigned len, int ret),
TP_ARGS(inode, lblk, pblk, len, ret) TP_ARGS(inode, map, ret)
); );
DEFINE_EVENT(ext4__map_blocks_exit, ext4_ind_map_blocks_exit, DEFINE_EVENT(ext4__map_blocks_exit, ext4_ind_map_blocks_exit,
TP_PROTO(struct inode *inode, ext4_lblk_t lblk, TP_PROTO(struct inode *inode, struct ext4_map_blocks *map, int ret),
ext4_fsblk_t pblk, unsigned len, int ret),
TP_ARGS(inode, lblk, pblk, len, ret) TP_ARGS(inode, map, ret)
); );
TRACE_EVENT(ext4_ext_load_extent, TRACE_EVENT(ext4_ext_load_extent,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment