找回密码
 注册
搜索
查看: 731|回复: 2

[讨论] MTK异常分析[exception][请教error code如何查]

[复制链接]
发表于 2010-11-9 09:36:43 | 显示全部楼层 |阅读模式
具体的说,是发生死机/重启后通过cacher抓出来的exception log,具体就是对应结构体EX_LOG_T。

我想知道的是:

1/其中的EX_FATALERR_T中的error_code是什么意思?其对应意义可以在哪儿查?特别是第一个,看起来应该是一个enum值....我查了MTK的exception的文档,都没找到。

2/EX_ENVINFO_T中我去查lr和stack dump,按照字面理解,lr该是死的地址值,stack dump里面是死的环境(包括数据和函数),但是由此我去编译出的映射表(sym/lis)中查出来的函数很怪啊......难道和我开的cacher的工程有关?

3/我现在遇到了一个task stack被破坏的错误,可以确定是我们自己加的一个task被踩坏了,但不知道是单纯的栈溢出还是其它什么原因,而且一直定位不准具体的函数.......有这个经验的达人能否指教一下。

[em01]
 楼主| 发表于 2010-11-10 09:35:28 | 显示全部楼层
晕,没人知道吗?
我看了下
http://www.52rd.com/Blog/Detail_RD.Blog_mastervon_24767.html
,还是没找到..........
点评回复

使用道具 举报

发表于 2010-11-13 10:39:29 | 显示全部楼层
1/其中的EX_FATALERR_T中的error_code是什么意思?其对应意义可以在哪儿查?特别是第一个,看起来应该是一个enum值....我查了MTK的exception的文档,都没找到。

Error code指exception的原因,在ExceptionHandling_Vxx.xxx.pdf里面的附录会找到[/COLOR]

2/EX_ENVINFO_T中我去查lr和stack dump,按照字面理解,lr该是死的地址值,stack dump里面是死的环境(包括数据和函数),但是由此我去编译出的映射表(sym/lis)中查出来的函数很怪啊......难道和我开的cacher的工程有关?

lr一般来说可以是理解为死时候的地址,但是也有例外的时候。假如是prefech abort,这个值是没有意义的。又或者函数指针被破坏,结果使得程序乱跳,这种情况lr和stack dump就会很怪。[/COLOR]

3/我现在遇到了一个task stack被破坏的错误,可以确定是我们自己加的一个task被踩坏了,但不知道是单纯的栈溢出还是其它什么原因,而且一直定位不准具体的函数.......有这个经验的达人能否指教一下。

有两种可能,第一种是某个task的stack爆了,把相邻的task踩爆。第二种是内部变量溢出。[/COLOR]
点评回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2024-12-29 12:32 , Processed in 0.054392 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表