您的位置:首页 > 编程语言 > PHP开发

一个YAFFS引发的一系列问题

2017-12-06 16:51 295 查看
最近给Tq2440移植uboot,卡在最后一步了,就是烧写文件系统,运行linux,因为没深入了解yaffs源码,所以遇到的问题比较多,最大的问题就是频繁出现以下提示:

Unable to handle kernel NULL pointer dereference at virtual address xxxx。

针对这个问题,首先要确定以下几个关键部分:根文件系统,内核支持的yaffs,交叉编译器等,只要涉及到的就都可能会出错。

后来我在尝试了数个linux内核版本和数个版本的yaffs,也是一直提示这个问题,大部分出现的问题都是yaffs源码的一些函数,偶然看到一篇博文提到,yaffs更新速度慢于linux五个月左右,于是我找了一个3.4.2版本的内核(09-Jun-2012),然后找了个合适的yaffs(2013-05-13),编译烧写完全没问题,甚至yaffs接口yaffs_vfs.c文件都没有出现未定义的一些问题。

总结: 如果对yaffs源码不足够熟悉,及对linux内核更新的特性不够了解,很容易出现两者直接的代码融合性问题,对于使用的内核版本,最好用yaffs超前五个月左右的源码。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: