LinuxDev 板


LINE

有個問題想請教大家,我把問題簡化如下: 使用的kernel 版本: 2.6.29-rc3 hello module裡面有全域變數victor_global_var,載入kernel後 透過指令grep 即可知道victor_global_var的位址 # grep victor_global_var /proc/kallsyms 現在換kernel版本 2.6.32 發現/proc/kallsyms內不會顯示 victor_global_var的位址導致無法取得 victor_global_var的位址,透過指令 # grep hello /proc/kallsyms 發現kallsyms只會顯示函式的位址,但不會顯示資料結構、全域變數等等的資訊 請問有什麼方法可以使2.6.32的kallsyms顯示module的變數位址?還是有 其他更好的方式可以得知module內的全域變數位址?? 謝謝大家! ================================================================= hello.c -------------------------- #include <linux/module.h> #include <linux/init.h> #include "hello.h" MODULE_LICENSE("Dual BSD/GPL"); int victor_global_var=1; static int hello_init(void) { int victor_local_var=2; printk(KERN_ALERT "driver loaded\n"); victor_local_var=3; victor_global_var=5; printk("##victor_global_var=%d\n",victor_global_var); return 0; } static void hello_exit(void) { printk(KERN_ALERT "driver unloaded\n"); } module_init(hello_init); module_exit(hello_exit); ================================================================ hello.h -------- #ifndef _HELLO_H_ #define _HELLO_H_ extern int victor_global_var; #endif ================================================================ LINUX 2.6.29-rc3 時的執行結果 ----------------------------- root@SERVER:~# uname -r 2.6.29-rc3-omap1 root@SERVER:~# insmod /hello.ko driver loaded root@SERVER:~# driver loaded ##victor_global_var=5 root@SERVER:~# grep hello /proc/kallsyms c02fb5f0 t br_hello_timer_expired c02fc1e8 t show_hello_timer c02fc34c t store_hello_time c02fc4a8 t show_hello_time c02fc550 t set_hello_time 00000000 a hello.c [hello] bf000000 t $a [hello] bf000000 t hello_exit [hello] bf000018 t $d [hello] bf00001c t $a [hello] bf00001c t hello_init [hello] bf000058 t $d [hello] c68690c0 ? __mod_license4 [hello] c68690c0 ? $d [hello] bf00008c r $d [hello] bf000468 d $d [hello] 00000000 a hello.mod.c [hello] c68690d5 ? __mod_srcversion30 [hello] c68690d5 ? $d [hello] c68690f8 ? __module_depends [hello] c6869101 ? __mod_vermagic5 [hello] c6869180 ? $d [hello] c6869180 ? ____versions [hello] bf000480 d $d [hello] c6869c83 n $d [hello] bf000480 d __this_module [hello] bf000000 t cleanup_module [hello] bf00001c t init_module [hello] bf000468 d victor_global_var [hello] c033a3f8 u printk [hello] root@SERVER:~# ================================================================= LINUX 2.6.32時察看執行結果 -------------------------- root@SERVER:~# insmod /hello.ko driver loaded root@SERVER:~# driver loaded ##victor_global_var=5 root@SERVER:~# grep hello /proc/kallsyms c0327e18 t br_hello_timer_expired c032889c t show_hello_timer c0328998 t store_hello_time c0328ae0 t show_hello_time c0328b70 t set_hello_time bf7b6000 t $a [hello] bf7b6000 t hello_exit [hello] bf7b6008 t $d [hello] bf7b600c t $a [hello] bf7b600c t hello_init [hello] bf7b6038 t $d [hello] bf7b6000 t cleanup_module [hello] bf7b600c t init_module [hello] root@SERVER:~# --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.116.220.253 ※ 編輯: neurone 來自: 122.116.220.253 (02/15 22:06)
1F:→ dou0228:如果你只是在其他module要看到該變數,用 EXPORT_SYMBOL 吧 02/16 23:01
2F:→ neurone:我想要在應用程式中得知位址,也不希望變數被其他module看 02/17 11:35
3F:→ neurone:到。到目前為止2.6.35.10 2.6.35.11皆是如此 02/17 11:36
4F:→ dou0228:知道位置之後要幹啥? 02/17 18:32
5F:→ neurone:知道變數的位址後,應用程式可透過自訂的ioctl去取值 02/21 12:27
6F:→ neurone:不需要另外解析變數 02/21 12:27
7F:→ dou0228:ioctl 不是這樣搞的吧? 02/21 17:15







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Boy-Girl站內搜尋

TOP