f2fs中trace_event抓取

启用trace

cd /sys/kernel/debug/tracing/
echo 1 > tracing_on

查看所有支持的evnet事件

cat available_events 

在这里插入图片描述
查看当前设置的event时间
在这里插入图片描述
开启stacktrace

echo 'stacktrace[:2]' > events/f2fs/f2fs_drop_inode/trigger

stacktrace 触发器命令的语法表示式为:
stacktrace[:count]
不加count的话每一次触发都会打印一次调用栈


function trace

cd /sys/kernel/debug/tracing/
echo function > current_tracer

过滤要查看的函数

echo 'f2fs_drop_inode:stacktrace[:2]' > set_ftrace_filter
# 追加使用 >>
echo 'f2fs_evict_inode' >> set_ftrace_filter
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
f2fs文件系统的inode结构包含以下字段: - i_mode:表示文件类型和权限信息的位掩码。 - i_uid:表示文件所属用户的用户ID。 - i_gid:表示文件所属组的组ID。 - i_links:表示链接数,即有多少个目录项引用这个inode。 - i_atime:表示最后一次访问该文件的时间。 - i_mtime:表示最后一次修改该文件内容的时间。 - i_ctime:表示最后一次修改该文件元数据的时间。 - i_size:表示文件的大小。 - i_blocks:表示文件占用的物理块数。 - i_advise:表示为该文件进行的优化建议。 - i_inline:表示是否使用内联扩展属性。 - i_xattr:表示扩展属性的头部信息,包括扩展属性数量等信息。 - i_projid:表示项目ID,用于POSIX ACL(Access Control List)的访问控制。 其,i_mode、i_uid、i_gid、i_size等字段与其他文件系统的inode结构类似,不再赘述。其余字段的含义如下: - i_links:在f2fs,当一个文件被删除时,其目录项并不会立即从目录移除,而是等到该文件的链接数减为0时才会被彻底删除。 - i_atime、i_mtime、i_ctime:与传统UNIX文件系统的意义相同。 - i_blocks:在f2fs,文件的大小不需要按照块的倍数对齐,因此i_size和i_blocks可能会不一致。 - i_advise:f2fs使用一些特有的优化策略,例如区域性文件访问预测(FSRB,File System Redundant Block)和节点合并(Node Merge),因此i_advise字段记录了针对该文件的建议。例如,一个频繁被访问的文件,i_advise可能会设置为FSRB。 - i_inline、i_xattr:f2fs支持将一些较小的文件内容和扩展属性直接存储在inode,从而避免了寻找对应的物理块的开销。 - i_projid:用于实现命名空间隔离和ACL的访问控制。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值