LINUX.ORG.RU

захват ресурсов модулем ядра & insmod failed


0

0

набрел в яндехе на статью http://www.programme.ru/archive/2001/8/082001_1.phtml
и компилирую оттуда экзампл захвата ресурсов модулем ядра:

сделал все, как написано в тексте:

mknod my_dev c 254 0
mknod my_dev c 254 1

[root@owl devel]# mknod my_dev c 255 0
[root@owl devel]# mknod my_dev c 255 1
mknod: `my_dev': File exists
[root@owl devel]#

далее

[root@owl devel]# insmod ./test.o
./test.o: init_module: Device or resource busy
Hint: insmod errors can be caused by incorrect module parameters, including invalid IO or IRQ parameters.
You may find more information in syslog or the output from dmesg
[root@owl devel]#

dmesg пишет:

Kernel: This is a test module startup message
Kernel: Device registered. Major number is 241
Kernel: Try allocating io ports
Kernel: IO ports allocated
Kernel: memio ports allocation failed

эррор пишет следующий код:

printk("Kernel: Try allocating io ports\n";);
if(check_region(PORT_START, PORT_COUNT)) {
printk("Kernel: Allocation io ports failed\n";);
return -EBUSY;
}

что это может быть такое??? Не понимаю... битых 3 часа не вьезжаю просто... :(((


anonymous

Мне нужно сместить стартовый адрес ядра на 8-9 мбайт, чтобы разместить там множество буферов для DMA, управлять которыми будет мой драйвер. Я менял стартовый адрес в makefiles, исходниках и везде, где мог, но в результате только разрушил таблицу партиций на диске. Чего я не знаю, и кому можно хотя бы задать такой вопрос?

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.