免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1898 | 回复: 0
打印 上一主题 下一主题

求助帖!spi驱动,应用层连续读数据,大概读写5000个字节之后就导致内核异常 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-06-05 15:47 |只看该作者 |倒序浏览
本帖最后由 lgq1010 于 2013-06-05 15:47 编辑
  1. static ssize_t s3c24xx_spi_write(struct file *filp,const char __user *buf,size_t count,loff_t *f_ops)  
  2. {  
  3.         int i;  
  4.    
  5.         struct global_mem *mem = filp-> private_data;

  6. //        printk("<1>spi write!,count=%d\n",count);  

  7.         if(copy_from_user(mem->dataTx, buf, count))  
  8.         {  
  9.                 printk("no enough memory!\n");  
  10.                 return -1;  
  11.         }         

  12.         for(i=0;i<count;i++)  
  13.         {  
  14.                 writeByte(mem->dataTx[i]);  
  15. //                printk("write 0x%02X\n", mem->dataTx[i]);  
  16.         }  
  17.         return count;  
  18. }  
复制代码
这个是驱动层的write函数,连续读写5000个字节就会导致内核异常,内核异常为vmap allocation for size 8192 failed : use vmalloc = <size> to increase size,其中PC指向异常出错的位置就是上面的write函数,应用层中是连续地读写数据,在网上找了也没有明确的解决方案,只能求大神了,用的是2.6.32的内核,micro2440的板子



各位有思路拜托说一下哈,在线等
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP