[问题] __initdata 和 __init

楼主: gn00618777 (非常念旧)   2014-07-15 22:11:13
在 kernel 的程式里看到函式有 __initdata 以及 __init 属性
上网查了一下,只要函式加了这两个,代表函式只会执行一次之后就被丢出
内存...函式里面的东西会放在.init.text的section中 ←这什么鬼= =?
=====================================================================
以下为 kernel porting 的范围 也是关于C语言
static struct i2c_board_info __initdata am335x_i2c0_boardinfo[] 和
static struct i2c_board_info am335x_i2c1_boardinfo[],为啥有分 __initdata 和
没有 __initidata? 有啥差别吗? 假设我device都不在 i2c0 上,我可以直接将
static struct i2c_board_info __initdata am335x_i2c0_boardinfo[] 改成
static struct i2c_board_info __initdata am335x_i2c1_boardinfo[] 吗?
加了__initdata 的初始化 i2c1 的函式执行过后,上面的devices就不能透过i2c1了吗?
谢谢。
作者: keeper7478 (the Servant of Cthulhu)   2014-07-16 05:23:00
.init.text->ELF header, .init.text 是 Linux 的special section: http://lwn.net/Articles/531148/

Links booklink

Contact Us: admin [ a t ] ucptt.com