重新编译自定义KLM模块

时间:2014-12-18 18:29:57

标签: linux linux-device-driver powerpc

我很擅长构建和理解内核KLM的内容,请您澄清以下问题?

假设我们有一个自定义KLM模块cust.ko,它是使用下面的build inline命令(makefile)构建的out-side-tree对一个内核(dir),它包含8个KLM模块(构建在内核源代码树中)< / p>

$(MAKE) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILER) -C $(KERNELDIR) M=$(PWD) modules

问题:

如果我们重新编译内核并引入了3个新的KLM模块(来自menuconfig),我们是否还需要重新编译cust.ko以在这个新重建的内核之上成功加载它?如果有,背后的任何具体技术原因?

是否因为在编译内核时加载/初始化地址是硬编码的(以某种方式计算)?

先谢谢。

1 个答案:

答案 0 :(得分:0)

我重新编译了自定义KLM模块,事情开始按预期工作。所以,我依赖于测试结果,我相信如果任何KLM是在树外构建的,需要重新编译,因为任何新KLM被添加到KLM并且必须KLM需要在新建的KLM上重新初始化。

谢谢!