как правильно распределить структуру в системном вызове - PullRequest
0 голосов
/ 30 октября 2018
struct test{
    /*...*/
}

asmlinkage syscall(){
    struct test *t;
    t = (struct test *)malloc(sizeof(struct test));
    //...
}

Во время компиляции всего ядра была показана следующая ошибка.

неявное объявление функции 'malloc'

Кажется, я не могу включить stdlib.h , но если я не использую malloc , указатель t будет NULL .

Это приводит к тому, что не может обработать разыменование указателя NULL ядра в (null)

Как назначить указатель на t ?

1 Ответ

0 голосов
/ 30 октября 2018

это назначить указатель на тип указателя struct test * t;

используйте следующий код

struct test t;

сделано

...