【发布时间】:2014-07-29 16:12:51
【问题描述】:
我观察到 linux 中的许多函数没有直接调用者。可能它们可能是通过函数指针或其他方式调用的。 我正在静态分析 linux 内核代码是否存在内存泄漏。在那我遇到了许多释放分配对象的函数,但我无法弄清楚该函数的调用者。
例如 i915_gem_free_object() 释放 i915_gem_set_tiling 中分配的 drm_i915_gem_object 结构的(obj->bit_17) 对象() 函数。但是浏览代码我无法弄清楚是谁在调用 i915_gem_free_object() 函数。
有什么方法可以静态检查吗? 附言我正在使用 Linux 内核 3.12
【问题讨论】:
-
我认为没有一种简单的方法可以通过函数指针静态跟踪函数调用。
标签: c linux linux-kernel linux-device-driver