Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

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
Loading
Loading
Loading
Loading
+1 −2
Original line number Original line Diff line number Diff line
@@ -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;
}
}
+1 −2
Original line number Original line Diff line number Diff line
@@ -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;
}
}


+13 −14
Original line number Original line Diff line number Diff line
@@ -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,
		__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,