Как отследить все вызовы функций в ядре Linux во время загрузки
Я новичок в отладке ядра Linux.
Я сталкивался с такими инструментами, как ftrace и gdb. Я хочу видеть все соответствующие вызовы функций, выполняемые при загрузке модуля ядром при его загрузке, такие как вызовы функций, выполняемые графическим драйвером (drm, kms, настройка буферов и т. Д.) И инициализация графического процессора.
Я попытался настроить Grub, добавив
stacktrace trace_event = sched:,timer:, irq: * trace_buf_size = 40M
и я получил следующий вывод
Depth Size Location (58 entries)
----- ---- --------
0) 4096 68 ftrace_call+0x5/0xb
1) 4028 8 mempool_alloc_slab+0x13/0x20
2) 4020 56 mempool_alloc+0x4e/0x140
3) 3964 12 scsi_sg_alloc+0x48/0x60
4) 3952 44 __sg_alloc_table+0xd6/0x130
5) 3908 32 scsi_alloc_sgtable+0x81/0xe0
6) 3876 20 scsi_init_sgtable+0x27/0x70
7) 3856 36 scsi_init_io+0x3c/0x1c0
8) 3820 140 sd_setup_read_write_cmnd+0x3c/0xb70
9) 3680 8 sd_init_command+0x2d/0xc0
10) 3672 16 scsi_setup_cmnd+0xe1/0x170
11) 3656 24 scsi_prep_fn+0xc4/0x170
12) 3632 36 blk_peek_request+0x13b/0x280
13) 3596 68 scsi_request_fn+0x38/0x5f0
14) 3528 12 __blk_run_queue+0x2e/0x40
15) 3516 40 blk_queue_bio+0x38c/0x3a0
16) 3476 40 generic_make_request+0xd0/0x1b0
17) 3436 96 submit_bio+0x67/0x180
18) 3340 28 submit_bh_wbc+0x115/0x170
19) 3312 16 bh_submit_read+0x3c/0xb0
20) 3296 64 __read_extent_tree_block+0x180/0x210
21) 3232 76 ext4_find_extent+0x11e/0x2f0
22) 3156 184 ext4_ext_map_blocks+0x63/0xec0
23) 2972 96 ext4_map_blocks+0x87/0x540
24) 2876 60 ext4_getblk+0x52/0x1b0
25) 2816 24 ext4_bread+0x23/0xa0
26) 2792 76 __ext4_read_dirblock+0x27/0x3f0
27) 2716 72 dx_probe+0x36/0x5e0
28) 2644 160 ext4_find_entry+0x457/0x610
29) 2484 60 ext4_lookup+0x5c/0x230
30) 2424 16 lookup_real+0x17/0x50
31) 2408 28 __lookup_hash+0x40/0x60
32) 2380 52 walk_component+0x218/0x2f0
33) 2328 52 link_path_walk+0x149/0x530
34) 2276 120 path_openat+0x7f/0x1120
35) 2156 152 do_filp_open+0x68/0xe0
36) 2004 40 file_open_name+0xf5/0x180
37) 1964 20 filp_open+0x27/0x50
что мне не очень помогло.
Как мне поступить? Любая помощь будет оценена.
Спасибо