问题描述:
probe kernel.function("*@net/socket.c").call{
printf("%s -> %s\n", thread_indent(1), ppfunc())
}
probe kernel.function("*@net/socket.c").return {
printf("%s <- %s\n", thread_indent(-1), ppfunc())
}
通过从第一个探针中删除.call修饰符来更改列表。请注意函数输入和函数返回现在不再匹配。这是因为现在第一个探针将匹配正常函数入口和内联函数。尝试重新放入.call修饰符并添加另一个探针,仅用于探测kernel.function(“* @ net / socket.c”)。return在探针处理程序中可以提出什么printf语句,以便很好地显示内联函数条目.call和.return线程之间缩进输出?
我不知道如何在函数返回探测处理程序中显示内联函数调用(如果有)?有人能提供帮助吗?提前谢谢。
答案 0 :(得分:0)
probe kernel.function("*@net/socket.c").inline {
printf("%s -- %s\n", thread_indent(0), ppfunc())
}