Re: [核心] kmalloc()

看板LinuxDev作者 (把我id還我阿......)時間17年前 (2008/06/19 16:52), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
※ 引述《seele2dx (兄弟劍下無兄弟)》之銘言: : 小弟目前在修改 linux kernel中碰到一個問題 : 假如想要在kernel裡面增加一個我所需要的結構 : 例子如下: : struct test *P ; : function A (struct test *ptr) //預計要傳入上面的全域變數 P : { : ptr = (struct test *) kmalloc ( sizeof(struct test), GFP_KERNEL); 這裡最好加個檢查,看看是否有成功配置到記憶體 : memset ( *ptr, 0, sizeof(struct test) ); : ptr->a = xxxx; : ptr->b = qqqq; : ... 初始化 : } : 但是每次執行到該函式,系統便會當機。 : 請問對於kmalloc的實際運用,該如何才正確呢? 感謝 :) 另外,你的 *P 是全域變數的話,是可以直接在 function A 修改 如果要當參數傳入 function A,而且會修改到,應寫成 function A( struct test **ptr){ *ptr = kmalloc( ...) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.228.25
文章代碼(AID): #18MexXu8 (LinuxDev)
討論串 (同標題文章)
本文引述了以下文章的的內容:
0
2
17年前, 2008/06/19 16:42
完整討論串 (本文為第 2 之 2 篇):
0
2
17年前, 2008/06/19 16:42
17年前, 2008/06/19 16:52
文章代碼(AID): #18MexXu8 (LinuxDev)