2012-04-24 39 views
4

我在寫驅動程序,我想知道哪些工具可以幫助掃描/分析Linux內核模塊中的內存泄漏。linux內核模塊中內存泄漏檢測工具

+0

如果你設計的代碼正確,驅動程序應該做一個最簡單的功能,這將是非常簡單的。如果是這樣,應該很容易驗證沒有泄漏,沒有任何工具。 – ugoren 2012-04-24 07:10:56

回答

2

我已經使用KEDR framework這裏取得了一些成功。

還有KMEMCHECK,但我沒有使用它,所以我不能擔保它的易用性。

+0

我還會將[Kmemleak](http://www.mjmwired.net/kernel/Documentation/kmemleak.txt)添加到值得嘗試的工具列表中。雖然KEDR適用於您選擇的內核模塊中的內存泄漏檢測,但Kmemleak可以在系統範圍的分析(內核本身和所有加載的模塊一次)中方便使用。 – Eugene 2012-04-24 07:28:58

+0

至於Kmemcheck,它的目標可能不是首先揭示內存泄漏,而是檢測不正確的內存訪問(有點類似於Valgrind的Memcheck在用戶空間中的做法)。 [Kmemcheck上的文檔](http://www.mjmwired.net/kernel/Documentation/kmemcheck.txt)提供了更多細節和另一個用法示例。 – Eugene 2012-04-24 07:34:24

+0

關於KEDR,如果有人想將KEDR 0.3用於內核3.3或更新的版本,那麼如何在這些內核上正確構建它的提示是[here](http://code.google.com/p/kedr/issues/)細節?ID = 5)。 – Eugene 2012-04-24 07:45:01