我是内核编程的新手,我有两个问题:
- 我的设备正在注册(通过动态注册),但我的应用程序无法打开设备文件。可能的原因是什么?
- 当我的设备驱动程序检测到除以零时,返回的适当错误代码是什么?
我的代码在内核中实现了简单的算术运算。我使用ioctl()
基于接口在用户空间和内核之间进行通信。
if(out.b==0) /*checking for divide by zero*/
out.res=-EINVAL;
else
out.res=out.a/out.b;
copy_to_user((values*)ioctl_param,&out,sizeof(values));
break;