当前位置: 技术问答>linux和unix
copy_to_user错误
来源: 互联网 发布时间:2016-08-15
本文导语: 以前写一个驱动,响应用户程序的 read消息,在驱动里调用 copy_to_user 没问题 今天新编了内核2.4.37.9 执行到这一步总是报错: invalid operand:0000 .... | 把代码贴出来吧 | cop...
以前写一个驱动,响应用户程序的 read消息,在驱动里调用 copy_to_user 没问题
今天新编了内核2.4.37.9 执行到这一步总是报错:
invalid operand:0000
....
今天新编了内核2.4.37.9 执行到这一步总是报错:
invalid operand:0000
....
|
把代码贴出来吧
|
copy_to_user( buf , (char*)&data_buf_ad[len], 4);
改成这样:
copy_to_user( buf , (char*)data_buf_ad, 4);
改成这样:
copy_to_user( buf , (char*)data_buf_ad, 4);
|
unsigned long copy_to_user(void __user *to,const void *from,unsigned long count);
long copy_to_user 第二个参数是 void* 并不需要 转换成 char*
另外 你确定 &data_buf_ad[len] 这个地址是有效的?
|
static int ad_read ( struct file *mem_file, char *buf, int len, loff_t *loff )
这里的buf是否需要用__user声明?
这里的buf是否需要用__user声明?
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。