除了strace还有其他方法记录iotcl调用吗?
我想看看当我调用一个函数时是否会调用某些 ioctl 调用(这是在 Linux 上)。没有办法让内核用这种数据写入日志,是吗?
I'm trying to see if certain ioctl calls get called when I call a function(this is on linux).There no way to cause the kernel to write a log with this sort of data, is there?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
在最新的内核上,如果内核配置为支持跟踪和动态跟踪,ftrace 可能可以做到你需要什么。
另一种选择是编写一个 ioctl 包装器,使用 LD_PRELOAD 加载它,并拦截包装器中有趣的 ioctl。
On recent kernel, and if kernel is configured with support for tracing and dynamic tracing, ftrace can probably do what you need.
Another option is to write an ioctl wrapper, load it using LD_PRELOAD, and intercept the interesting ioctl in your wrapper.