Здравствуйте!  
 
Столкнулся с непонятной для меня ошибкой: 
Есть драйвер, в котором объявлена структура file_operations: 
static struct file_operations fops = {
	.owner        = THIS_MODULE,
	.open         = Open,
	.release      = Close,
        .compat_ioctl = Ioctl,
	.mmap         = Mmap,
};::ioctl(arg1, arg2, arg3);Проблема в том, что функция Ioctl(), описанная в коде драйвера при этом не вызывается. Это установлено точно, с помощью отладочных выводов. А вызов ioctl из тестовой программы возвращает -1 (при том что в коде драйвера в Ioctl() в принципе нет return -1;).
При этом, все остальные функции из file_operations успешно вызываются из тестовой программы (установлено так же с помощью отладочных выводов).
Подскажите пожалуйста, в чем может быть причина этой проблемы и как от нее избавится?  
Заранее спасибо!


