欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 又一次Hardfault [打印本頁(yè)]

作者: xuwei    時(shí)間: 2015-6-13 00:34
標(biāo)題: 又一次Hardfault
多少年沒出現(xiàn)過(guò)hardfault 了。終于又讓我碰上了。
最近在調(diào)試的時(shí)候需要一個(gè)外部中斷,于是乎添加之,本想到?jīng)]啥事的。結(jié)果直接Hardfault
心說(shuō)來(lái)就來(lái)吧,反正又不是第一次,開始定位PC指針打開一看是ETX線程的MEMcpy出錯(cuò)。


找吧

坑爹的找了一晚上沒找到,這是標(biāo)準(zhǔn)庫(kù)啊,怎么會(huì)有問題、
之后就是各種的加保護(hù),各種保護(hù)。

鎖內(nèi)核,關(guān)中斷。

最后還是依舊如此


過(guò)去看了變量
發(fā)現(xiàn)有個(gè)dst 指針為0x00000000;而他應(yīng)該是DMA的RAM地址
這不是非法修改么?我操。

找啊找找啊找
沒找到
后來(lái)把M3的內(nèi)核參考翻出來(lái)了,看寄存器,反而更糊涂了

實(shí)在沒招了......

開始排除法
反復(fù)測(cè)試發(fā)現(xiàn)中斷發(fā)送郵箱后就死。
打開線程入口

開始逐步的排除全刪了一點(diǎn)點(diǎn)加,終于在

找到問題。
這是個(gè)信號(hào),沒什么奇怪的,但是

此信號(hào)為全局變量,這樣我在引用的時(shí)候需要用extern 聲明
結(jié)果

變成了這樣



這是什么鳥貨?
嘖嘖少了一個(gè)char /////

加上編譯,運(yùn)行OK

實(shí)際上這個(gè)內(nèi)存越界、野指針、除零一樣,是非法操作,會(huì)導(dǎo)致Hardfault的。因?yàn)椴辉偈且粋(gè)變量。所以然。

2晚上終于讓我找到根了!馬丹的哥從來(lái)不熬夜。為此耗費(fèi)兩個(gè)晚上,今天還他媽的想了一天。

搞定了也值得!!

2015 05 25
比特老王








作者: admin    時(shí)間: 2015-9-13 20:36
謝謝 hardfault這個(gè)問題我也遇到過(guò).回顧一下




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1