Hi,
Дописал системный вызов в файл sys_i386.c (/usr/src/linux/arch/i386/kernel/sys_i386.c). Для начала сделал его с пустым телом и вернул известную мне ошибку, пересобрал ядро, проверил, работает. Дальше решил сделать дамп памяти всех процессов в этом системном вызове. При компиляции ядра вылетает ошибка:
task_struct undeclared
Странно... Вроде бы заголовочный файл linux/sched.h подключен... Такая же фигня и со структурой vm_area_struct... В чем проблема?
Ось - openSuSE 10.3, ядро - 2.6.22.5-31
Решено: При компиляции ядра вылетает ошибка "task_struct undeclared"
Модератор: Модераторы разделов
-
Sonntex
- Сообщения: 3
-
RasenHerz
- Сообщения: 1341
- ОС: Arch Linux amd64
Re: Решено: При компиляции ядра вылетает ошибка "task_struct undeclared"
исходный код в студию. я имею предположения что не так, но желаю удостовериться.
-
Sonntex
- Сообщения: 3
Re: Решено: При компиляции ядра вылетает ошибка "task_struct undeclared"
Код: Выделить всё
...
#include <linux/sched.h>
...
asmlinkage int sys_vmdump()
{
task_struct* tsk;
return 0;
}
...К сожалению, большую часть этого файла предоставить не могу, т.к. работаю в openSuSE через вмвару из винды, тулзы, мост и ssh не настраивал, поэтому есть только визуальный доступ к коду. Могу сказать, что точно этот же код, но без объявления task_struct* tsk, компилится на ура.
В крайнем случае могу сделать скриншот.
-
serzh-z
- Бывший модератор
- Сообщения: 8259
- Статус: Маньяк
- ОС: Arch, Fedora, Ubuntu
Re: Решено: При компиляции ядра вылетает ошибка "task_struct undeclared"
Sonntex
"task_struct* tsk;" -> "struct task_struct* tsk;"
"task_struct* tsk;" -> "struct task_struct* tsk;"
-
Sonntex
- Сообщения: 3