Chinaunix

标题: nand 读取不稳定问题分析 [打印本页]

作者: Scorpioo    时间: 2008-09-28 17:56
标题: nand 读取不稳定问题分析
各位好! 我的盒子遇到一个问题请大家帮忙分析分析:



问题现象及做过的尝试:

    编辑了一个文件,然后reboot重启后,运行应用的时候可能会出现 Segmentation fault 或者 Illegal instruction 的错误,反复断电复位几次可能就好了。
    当出现这样的问题之后,尝试重启多次,每次所出错的应用不一定是同一个,静态编译或动态编译的程序都会出现,所报错误以 Segmentation fault 居多(可以确定应用本身没有 Segmentation fault)。
    偶尔出现,多个盒子上都出现过,出问题前所编辑的文件并不固定。

系统基本情况:

u-boot: 1.1.5
kernel: 2.6.21
filesystem: yaffs2
yaffs version:
     yaffs_nand.c,v 1.7 2007/02/14
     yaffs_fs.c,v 1.60 2007/05/15
     yaffs_ecc.c,v 1.9 2007/02/14
     yaffs_checkptrw.c,v 1.14 2007/05/15


nand ecc 用的是yaffs的,选择了 NAND_ECC_NONE.


nand 规划:
0x00000000 - 0x00200000 :内核
0x00200000 - 0x03200000 : 系统 (mtdblock0)
0x03200000 - 0x10000000 : 数据 (mtdblock1)




不容易复现,比较头疼的问题,各位帮忙看看啊, 多谢了!





.

[ 本帖最后由 Scorpioo 于 2008-9-29 09:23 编辑 ]
作者: Scorpioo    时间: 2008-09-29 09:22
这可不能沉啊  !
作者: fansfu    时间: 2008-09-29 10:09
所用编译器出错, 看看你用的编译器是否支持你当前的板子。
这样子的错误是个无厘头。。
作者: Scorpioo    时间: 2008-09-29 21:28
原帖由 fansfu 于 2008-9-29 10:09 发表
所用编译器出错, 看看你用的编译器是否支持你当前的板子。
这样子的错误是个无厘头。。



支持的,所有板子(上的)所有程序都是用的同样的工具链。
作者: rodgerluo    时间: 2008-09-30 08:47
nand 规划:
0x00000000 - 0x00200000 :内核
0x00200000 - 0x03200000 : 系统 (mtdblock0)
0x03200000 - 0x10000000 : 数据 (mtdblock1)

内核到底是哪一个mtdblock?????
作者: fansfu    时间: 2008-09-30 10:54
这个MTD分的挺混乱,不知道那个系统是啥玩意。。
看个sample:
0x00000000-0x00080000 : "uboot"         
0x00080000-0x00380000 : "kernel"
0x00380000-0x00600000 : "rootfs"
0x00600000-0x00900000 : "Lib"
0x00900000-0x02700000 : "exe"   
0x02700000-0x04500000 : "app"
0x04500000-0x08000000 : "data"

这个就比较清楚了。
作者: Scorpioo    时间: 2008-10-04 17:15
原帖由 fansfu 于 2008-9-30 10:54 发表
这个MTD分的挺混乱,不知道那个系统是啥玩意。。
看个sample:
0x00000000-0x00080000 : "uboot"         
0x00080000-0x00380000 : "kernel"
0x00380000-0x00600000 : "rootfs"
0x00600000-0x00900000 :  ...




0x00000000 - 0x00200000 : "kernel"
0x00200000 - 0x03200000 : "rootfs(lib/app etc.)" (mtdblock0)
0x03200000 - 0x10000000 :  "data" (mtdblock1)

u-boot 在data flash 里




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2