[問題] 有辦法查看函式被誰呼叫嗎?

看板Linux作者 (昨天似乎有)時間10年前 (2013/09/25 14:55), 編輯推噓5(506)
留言11則, 5人參與, 最新討論串1/1
各位大大們好,最近小弟在對於 linux kernel的部分學習了解, 目前主要是用ctag的方式去找 出程式碼的脈絡或定義,不過 在過程中有時候也需要往下追, 不知道有沒有可以找出函式被誰呼叫的 這種工具呢? 謝謝大家 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.146.86.168

09/25 15:47, , 1F
呃 ... grep -r function_name .
09/25 15:47, 1F

09/25 15:50, , 2F
改成 grep -rn --color 好了,比較好讀 XD
09/25 15:50, 2F

09/25 16:13, , 3F
用cscope吧,可以查該symbol出現在哪裡
09/25 16:13, 3F

09/25 21:16, , 4F
backtrace, 或者用dump_stack (如果那玩意真的是function)
09/25 21:16, 4F

09/25 23:19, , 5F
cscope, eclipse+cdt, Windows下商業軟體source insight
09/25 23:19, 5F

09/25 23:20, , 6F
還有cscope的前端kscope,不過這套我很久沒用就是了
09/25 23:20, 6F

09/25 23:25, , 7F
推一下 Eclipse CDT
09/25 23:25, 7F

09/26 16:51, , 8F
可以有很多地方呼叫這個 function 啊 這樣推不容易找
09/26 16:51, 8F

09/26 16:51, , 9F
如果能 runtime 來找的話 可能容易些 用 ftrace 可以知道
09/26 16:51, 9F

09/26 16:52, , 10F
是誰呼叫了這個 function
09/26 16:52, 10F
文章代碼(AID): #1IGeZ_pc (Linux)