[linux内存管理] 第029篇 谁把folio的函数定义“藏”起来了? 2日前查看 评论
[linux内存管理] 第029篇 谁把folio的函数定义“藏”起来了?

这篇文章探讨了Linux内核中一种特殊的函数定义方式,作者在阅读代码时遇到了无法找到某些函数定义的问题,如`folio_test_active()`。通过深入研究,作者发现这些函数是通过宏定义如`PAGE_TYPE_OPS()`和`FOLIO_FLAG()`在`/include/linux/page-flags.h`中定义的。文章详细解释了这些宏如何工作,以及如何通过它们生成函数定义。总结部分指出,这种探索过程虽然艰辛,但对于喜欢阅读代码的人来说,发现和理解这些机制是非常有趣且有益的。