Linux内核模块的内存泄漏检测工具

6

我正在编写驱动程序,想知道哪些工具可以帮助扫描/分析Linux内核模块中的内存泄漏问题。


如果您正确设计了代码,驱动程序应执行最小功能,这非常简单。如果是这样的话,那么验证没有泄漏应该很容易,而不需要任何工具。 - ugoren
1个回答

2

我曾经在这里成功使用过KEDR框架

还有KMEMCHECK,但是我没有使用过,所以不能保证它的易用性。


我还会把Kmemleak添加到值得尝试的工具列表中。虽然KEDR在检测您选择的内核模块的内存泄漏方面很好,但Kmemleak在系统范围的分析(包括内核本身和所有已加载的模块)中可能很方便。 - Eugene
关于Kmemcheck,它的目标可能不是首先揭示内存泄漏,而是检测不正确的内存访问(与Valgrind的Memcheck在用户空间中所做的有些相似)。 Kmemcheck的文档提供了更多细节和另一个用法示例。 - Eugene
2
关于KEDR,如果有人想在内核3.3或更高版本上使用KEDR 0.3,则可以在此处找到如何在这些内核上正确构建它的提示:http://code.google.com/p/kedr/issues/detail?id=5。 - Eugene

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接