Как рассчитать время работы функции Linux в ядре start_kernel?

Мне нужно выяснить, сколько времени занимают вызовы функций внутри функции start_kernel ядра Linux.

Почему это проблема, потому что ядро ​​не загрузится, если я поставлю ktime_get() вызов функции перед вызовом функции timekeeping_init() внутри этой же функции.

В моей настройке я думаю, что скорее всего ядро ​​проводит много времени внутри mm_init(), Но я не могу проверить из-за вышеупомянутой проблемы.

Есть идеи как обойти это?

Благодарю.

1 ответ

Решение

В начале загрузки не так много доступно. printk должно работать, хотя.

Если вы используете x86, вы можете использовать rdtsc(), В настоящее время работает только 1 процессор, поэтому обычные предупреждения о непонятных результатах пока не применяются.

Другие вопросы по тегам