Я собираю модуль ядра Linux, и мне нужно другое устройство. После того, как я вставил модуль, я не могу открыть устройство. На самом деле его нет в каталоге /dev
.
Этот же код отлично работает на другом компьютере. Я попытался настроить разрешение (теперь их 777), но ничего не изменилось.
static struct file_operations my_fops = {
.owner = THIS_MODULE,
.unlocked_ioctl = my_ioctl,
.open = my_open,
.release = my_close,
};
static struct miscdevice test_device = {
.minor = MISC_DYNAMIC_MINOR,
.name = DEVICE_NAME,
.fops = &my_fops,
.mode = 0777, // this should set the permissions
};
static int __init testmodule_init(void)
{
int res;
res = misc_register(&test_device);
printk("Misc Register returned %d\n", res);
return res;
}
, когда я вставляю модуль, он возвращает 0 (так должно быть в порядке), но я не могу открытьэто и найти его на устройствах /dev
. Спасибо вам всем.