Как сделать функцию ядра Linux доступной для ftrace?
Я хочу отследить 2 функции в каком-то модуле ядра, которые вызываются во время приостановки / возобновления.
Эти функции появляются в "available_filter_functions".
Вот как я настраиваю ftrace:
echo nop > current_tracer
echo fun_suspend > set_ftrace_filter
echo fun_resume > set_ftrace_filter
echo function_graph > current_tracer
Когда я приостанавливаю / возобновляю работу машины, эти функции вызываются наверняка (я вижу логи), но не отображаются в cat trace
У кого-нибудь есть идеи?
Спасибо,
Матти
1 ответ
Решение
Функции, которые я хотел измерить, находились в состоянии приостановки возобновления. Очевидно, что приостановка и возобновление очень проблематичны для функций трассировки (динамическая трассировка), а ftrace отключает трассировку во время этого процесса. Так что пока вы не можете отследить эти функции.