13

如何指示系统重新加载所有已更改的内核模块?(我正在开发一个包含多个模块的驱动程序。我想要一种快速且无错误的方法来重新加载所有更改的模块。)

4

2 回答 2

15

没有简单、无错误的方法,因为在内核中添加/删除驱动程序的代码中的错误可能会导致无法删除模块。以类似的方式,驱动程序中的错误可能导致某些中断处理程序中的死锁,因此内核永远无法卸载模块。

此外,由于内核不会检查模块文件的更改,因此没有自动方法可以做到这一点。

您所能做的就是编写一个小脚本,rmmod以正确的顺序调用以删除模块,然后modprobe将新版本放入内核。

于 2011-01-10T11:03:19.940 回答
0

使用 rmmod 删除添加的模块并使用 modprobe 再次加载调试的模块是唯一有效的解决方案。

于 2019-01-04T19:46:51.593 回答