【问题标题】:Linux kernel programming: implicit declaration of function 'vmalloc'Linux内核编程:函数'vmalloc'的隐式声明
【发布时间】:2015-12-14 18:44:21
【问题描述】:

我正在向 Linux 内核 6.22 添加系统调用。

#include <stddef.h>
#incldue <linux/kernel.h>
#include <linux/sched.h>
#include <linux/types.h>
#include <linux/lists.h>
#include <asm-i386/uaccess.h>

asmlinkage long sys_mypstree(char* buffer2copy){
     char* buffer = (char*)vmalloc(sizeof(buffer2copy));
     ...
}

然后当我制作内核时。它显示警告:函数'vmalloc'的隐式声明。那么,我现在要做什么?

【问题讨论】:

  • #include &lt;linux/vmalloc.h&gt;。如果你在搞乱内核,你真的不应该问这些问题。或者如果你问这样的问题,你不应该搞乱内核。顺便说一句,什么是内核 6.22?你是来自未来还是什么?
  • @EugeneSh.对不起,现在是 2.6.22。我是一名学生,现在开始学习linux内核。

标签: c linux kernel


【解决方案1】:

您绝对应该:
#include &lt;linux/vmalloc.h&gt; 因为它会修复您的警告。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-05
    • 2021-01-20
    • 1970-01-01
    • 1970-01-01
    • 2014-06-28
    相关资源
    最近更新 更多