LINUX.ORG.RU

Ошибка при выделении памяти

 , ,


0

2

Всем привет!

Возникла досадная проблема. Имею отладочную плату imx6q SabreLite. Ядро 3.0.35-4.1.0+yocto+g5809938.

При загрузке драйвера, для работы с АЦП, вываливается ошибка, вида:

root@nitrogen6x:~# insmod adv7180.ko 
adv7180 2-0020: chip found @ 0x40 (imx-i2c)
adv7180: Failed to probe: -5
adv7180: probe of 2-0020 failed with error -5 

Смотрю код драйвера, ошибка возникает при выделении памяти:

        v4l_info(client, "chip found @ 0x%02x (%s)\n",
			client->addr << 1, client->adapter->name);
	state = kzalloc(sizeof(struct adv7180_state), GFP_KERNEL);
	if (state == NULL) {
		ret = -ENOMEM;
		goto err;
	}

......
err:
	printk(KERN_ERR DRIVER_NAME ": Failed to probe: %d\n", ret);
	return ret;

Хотелось бы понять причину такого поведения и намек на то как ее решить.

P.S. Сделал вывод размера структуры, ее размер 624 байта. Состояние памяти, подсмотрено через top

Mem: 82616K used, 818332K free, 0K shrd, 2972K buff, 37124K cached



Последнее исправление: batchar (всего исправлений: 2)

Ответ на: комментарий от MKuznetsov

Нет, плохо проверил - не ту версию скомпилял, где я понавставлял вывод отладочных сообщений. Ошибка при записи i2c возникает.

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