【发布时间】:2012-12-27 04:37:30
【问题描述】:
我在使用内核模块时遇到无法处理内核空指针取消引用错误。 这是我正在尝试做的事情
inputfile = filp_open(kernel_args->infile, O_RDONLY, 0); //Open a file
if(inputfile == NULL) //Check if the file exists
{
printk("\nInput file not found on drive\n");
error = -ENOENT;
goto quit;
}
但内核在检查 null 时给了我一个“哎呀”。我不知道如何避免它,因为我正在检查 null 并做我应该做的事情。
【问题讨论】:
-
这就是
inputfile的全部内容? -
您是否检查了
kernel_args->infile以确保它不为NULL? -
在 about 代码之前,唯一一次使用 inputfile,用于声明 'struct file *inputfile = NULL;' kernel_args->infile 不是 NULL
-
@haunteddevil619:在调用
filp_open之后对inputfile的引用呢? -
@K-ballo 在翻转打开后没有引用。代码和我发布的一样
标签: c oop linux-kernel kernel-module kernel