Re: [問題] Driver的啟動順序問題?
※ 引述《mayasky ( )》之銘言:
: 如果屬於於同一類的話這招或許就不行了?
: 有__init會link該function在一個init table裡
: init時會走過一次這table
: 如果在同一級中似乎是按照實作(or宣告)的先後順序link?
: (以上皆是遙遠的記憶,我遇過一次這需求)
: 所以你要B先跑就先實作B~再實作A
: 目的就是安排init table的先後罷了
: 手邊沒機器可以TRACE和實驗,有錯請告訴我XD
try this
假設 B 須要 A
A.c
------
void need_a(void)
{
}
EXPORT_SYMBOL(need_a);
-----
A.h
....
extern void need_a(void);
-----
重點的 B.c
#include "A.h"
在 __init function 前面
need_a();
這樣他就知道你兩個 module 之間有關聯
PS: 靜態連結至 kernel 小心 GPL 問題
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.32.68.90
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 6 之 7 篇):