有没有办法查找 kobject 的引用计数?
Is there a way to lookup refcount for a kobject?
我希望在 kobject.c 中找到一个类似于 kobject_check_refcount
的函数,它返回当前的引用计数而不改变它,但据我所知没有。内核源代码中某处是否存在这样的功能?我可以看到它在某些时候对调试很有用。
编辑:发现 kref_read 听起来符合要求。只是测试看看它是否像我期望的那样工作。
是的,看起来 kref_read 是正确的方法。
static inline unsigned int kref_read(const struct kref *kref)
{
return refcount_read(&kref->refcount);
}
我希望在 kobject.c 中找到一个类似于 kobject_check_refcount
的函数,它返回当前的引用计数而不改变它,但据我所知没有。内核源代码中某处是否存在这样的功能?我可以看到它在某些时候对调试很有用。
编辑:发现 kref_read 听起来符合要求。只是测试看看它是否像我期望的那样工作。
是的,看起来 kref_read 是正确的方法。
static inline unsigned int kref_read(const struct kref *kref)
{
return refcount_read(&kref->refcount);
}