URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 8484
[ Назад ]

Исходное сообщение
"kmalloc fails"

Отправлено kernelk , 22-Окт-09 13:34 
Поставил debian 5 lenny на vmware. kmalloc в простейшем модуле ядра
вываливается и выдаёт:
kernel BUG at mm/slab.c:2774!
...
Call Trace:
kmem_cache_alloc
hi
...

Вываливается точно на kmalloc. Код модуля таков:

#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/init.h>

char *buf;

static int __init hi( void )
{
  buf = kmalloc( GFP_KERNEL, 71 );
}

static void __exit bye( void )
{
  kfree(buf);
}

module_init(hi);
module_exit(bye);

По идее повреждается служебный блок slab аллокатора, но вот почему не пойму.
Подскажите хотя бы как поточнее узнать причину.


Содержание

Сообщения в этом обсуждении
"kmalloc fails"
Отправлено const86 , 22-Окт-09 16:32 
>  buf = kmalloc( GFP_KERNEL, 71 );

Порядок параметров неправильный.


"kmalloc fails"
Отправлено kernelk , 22-Окт-09 18:31 
>>  buf = kmalloc( GFP_KERNEL, 71 );
>
>Порядок параметров неправильный.

Вот я протупил, всё перерыл, а на это даже не обратил внимания. Спасибо.