kgdb调试内核模块无法进入断点
- 
					
					
					
					
 问题描述:用KGDB在线调试disp模块时总是进入不了disp_module_init函数内部,disp_prob内部也进不去。 在内核启动初期进入kgdb, 
 add symbol table from file "/smbshare/dragonboard/buildroot/target/dragonboard/rootfs/lib/modules/3.4.39/disp.ko" at
 .text_addr = 0xbf000000
 .bss_addr = 0xbf0e20d8
 .data_addr = 0xbf02dad0
 .devinit.text_addr = 0xbf023c3c
 .exit.text_addr = 0xbf023e24
 .gnu.linkonce.this_module_addr = 0xbf0e1f64
 .init.text_addr = 0xbf0f4000
 .note.gnu.build-id_addr = 0xbf023ee8
 .pv_table_addr = 0xbf029b8c
 .rodata_addr = 0xbf023fc0
 .rodata.str1.1_addr = 0xbf0255ac
 .strtab_addr = 0xbf0ff974
 .symtab_addr = 0xbf0f4154
 .text.unlikely_addr = 0xbf023ea8
 __kcrctab_addr = 0xbf023f84
 __ksymtab_addr = 0xbf023f0c
 __ksymtab_strings_addr = 0xbf028dcb
 __mcount_loc_addr = 0xbf028ed0
 (y or n) y
 Reading symbols from /smbshare/dragonboard/buildroot/target/dragonboard/rootfs/lib/modules/3.4.39/disp.ko...warning: section .strtab not found in /smbshare/dragonboard/buildroot/target/dragonboard/rootfs/lib/modules/3.4.39/disp.ko
 warning: section .symtab not found in /smbshare/dragonboard/buildroot/target/dragonboard/rootfs/lib/modules/3.4.39/disp.ko
 done.
 (gdb) b disp_module_init
 Breakpoint 4 at 0xbf000000: disp_module_init. (2 locations)
 设置断点时发现有2个位置
 (gdb) i b 4
 Num Type Disp Enb Address What
 4 breakpoint keep y <MULTIPLE>
 breakpoint already hit 1 time
 4.1 y 0xbf000000 in disp_sync_finish_process
 at drivers/video/sunxi/disp/dev_disp.c:1687
 4.2 y 0xbf0f4010 <init_module+16>查看源码 
 (gdb) list disp_module_init
 1682
 1683 return ret;
 1684 }
 1685
 1686 static void __exit disp_module_exit(void)
 1687 {
 1688 __inf("disp_module_exit\n");
 1689
 1690 #ifdef CONFIG_HAS_EARLYSUSPEND
 1691 unregister_early_suspend(&backlight_early_suspend_handler);
 (gdb)
 行号完全不对,向下移动了很多行,应该在1642行
  
 全速运行停在下面位置
 (gdb) c
 Continuing.Breakpoint 4, 0xbf0f4010 in init_module () 
 再全速就执行完了,根本进入不了函数内部。不知道问题出在哪里? 
- 
					
					
					
					
 @zjbxzf 问题解决把初始化函数前的__init去掉就行了 
Copyright © 2024 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号