为了找出调用内核的位置,Ftrace可以成为一个方便的工具.
对于您的特定情况,我使用以下命令来获取读取的函数图/sys/power/state(我认为读取函数与您正在寻找的函数不会相差太远):
trace-cmd record -p function_graph -F cat /sys/power/state
Run Code Online (Sandbox Code Playgroud)
(你需要root才能执行这个)
这会将跟踪转储到名为的二进制文件trace.dat.要读取此文件,请执行以下操作(再次以root身份):
trace-cmd report
Run Code Online (Sandbox Code Playgroud)
然后我习惯grep过滤"power"或"state"之类的输出,最终能够找到以下内容(仅显示相关部分):
sysfs_read_file() {
...
state_show() {
valid_state() {
acpi_suspend_state_valid();
}
}
...
}
Run Code Online (Sandbox Code Playgroud)
所以阅读/sys/power/state结束了state_show.在该函数下面,您可以找到state_store我认为最终会写入的位置.
| 归档时间: |
|
| 查看次数: |
2756 次 |
| 最近记录: |