追代码的好工具 -----打印出内核调用堆栈

需要包含的头文件:

#include <asm/ptrace.h>

在函数中调用:

dump_stack();


打印的大致内容如下:

   57.210934] [<bf39ab78>] (phbalReg_Exchange+0x68/0x90 [nfc]) from [<bf39b7c0>] (phhalHw_Pn517_ReadRegister+0x44/0x80 [nfc])
<6>[   57.211027] [<bf39b7c0>] (phhalHw_Pn517_ReadRegister+0x44/0x80 [nfc]) from [<bf39d818>] (phhalHw_Pn517_WaitIrq+0x158/0x160 [nfc])
<6>[   57.211120] [<bf39d818>] (phhalHw_Pn517_WaitIrq+0x158/0x160 [nfc]) from [<bf39c124>] (phhalHw_Pn517_ExchangeEx+0x1b8/0x40c [nfc])
<6>[   57.211219] [<bf39c124>] (phhalHw_Pn517_ExchangeEx+0x1b8/0x40c [nfc]) from [<bf3a9270>] (phpalI14443p3b_Sw_RequestBEx+0xec/0x130 [nfc])
<6>[   57.211325] [<bf3a9270>] (phpalI14443p3b_Sw_RequestBEx+0xec/0x130 [nfc]) from [<bf3a92e4>] (phpalI14443p3b_Sw_WakeUpB+0x30/0x38 [nfc])
<6>[   57.211420] [<bf3a92e4>] (phpalI14443p3b_Sw_WakeUpB+0x30/0x38 [nfc]) from [<bf390b6c>] (phacDiscLoop_Sw_Int_Emvco_CollisionDetectionB+0x224/0x248 [nfc])
<6>[   57.211504] [<bf390b6c>] (phacDiscLoop_Sw_Int_Emvco_CollisionDetectionB+0x224/0x248 [nfc]) from [<bf38fcc8>] (phacDiscLoop_Sw_Start+0xab0/0xd58 [nfc])
<6>[   57.211586] [<bf38fcc8>] (phacDiscLoop_Sw_Start+0xab0/0xd58 [nfc]) from [<bf38e670>] (phacDiscLoop_Start+0x40/0x74 [nfc])
<6>[   57.211665] [<bf38e670>] (phacDiscLoop_Start+0x40/0x74 [nfc]) from [<bf38df48>] (Lib_PiccCheck+0xa4/0x1a0 [nfc])
<6>[   57.211744] [<bf38df48>] (Lib_PiccCheck+0xa4/0x1a0 [nfc]) from [<bf38db80>] (pin517_main+0x6c/0x8c [nfc])
<6>[   57.211825] [<bf38db80>] (pin517_main+0x6c/0x8c [nfc]) from [<bf3c3040>] (dev_init+0x40/0x1000 [nfc])
<6>[   57.211879] [<bf3c3040>] (dev_init+0x40/0x1000 [nfc]) from [<c01005f8>] (do_one_initcall+0x10c/0x170)
<6>[   57.211904] [<c01005f8>] (do_one_initcall+0x10c/0x170) from [<c01ddac8>] (sys_init_module+0x11b8/0x1fa8)
<6>[   57.211930] [<c01ddac8>] (sys_init_module+0x11b8/0x1fa8) from [<c0106720>] (ret_fast_syscall+0x0/0x30)

大致能看出调用关系了.

这个比加log去追效率高多了!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值