最近我试图修改3.13.11的内核代码。我在/ include目录中添加了一个头文件。在此文件中,我尝试使用task_struct但遇到以下错误:
error: dereferencing pointer to incomplete type
rbuffer_free(&(task->task_pri));
我的代码如下,task_pri是我在task_struct中添加的一些字段:
static inline void release_pri(struct task_struct *task)
{
rbuffer_free(&(task->task_pri));
我已经包含了头文件“linux / sched.h”。谁能解释一下这个?
还有另一件事让我感到困惑。我读了“linux / kernel / exit.c”的源代码。它不包含标题“linux / sched.h”,那么如何使用task_struct没有错误?