0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

異常重啟怎么破?多方排查后,原因竟然是。。。

青山老竹農(nóng) ? 來源:jf_82863998 ? 作者:jf_82863998 ? 2024-10-14 07:04 ? 次閱讀

?又是異常重啟。。。讓人摸不到頭腦。

這幾天,看到客戶上報了重啟問題,說是查不出原因。

重啟現(xiàn)象是 ——有極個別設備在工作中不定時反復異常重啟,大部分設備正常;反復重啟設備,有時候又能持續(xù)正常工作。

溝通中很明顯感覺到了客戶的著急和無奈,必須找出背后原因,解決客戶問題!

一、查找線索

按常規(guī)流程先詢問客戶開發(fā)模塊、開發(fā)方式,并要求提供對應日志。經(jīng)確認如下:

開發(fā)模塊:Air780E

最新資料:www.air780e.cn

開發(fā)方式:LuatOS

開發(fā)教程

https://doc.openluat.com/wiki/26?wiki_page_id=3020

客戶提供日志反饋:

腳本日志沒報錯誤,就是不定時卡住一會,然后就重啟了。

圖片?

第一反應:不會是死循環(huán)導致的重啟吧?

客戶反饋:“沒有死循環(huán),任務里面都有延時的,而且大部分設備是正常的。且重啟的時間也不定,最短4秒,最長是三分多鐘,看起來不符合20秒的看門狗重啟呀,而且設備昨天有正常工作一天,然后異常的時候就持續(xù)一直異常。但是這個固件的絕大部分設備是正常工作,不會異常重啟的?!?/p>

看來不是死循環(huán)導致的看門狗重啟問題。

為了進行一步排查重啟原因,我讓客戶用pm.lastReson()這個接口打印開機原因值。

客戶反饋:“我們有平臺上傳數(shù)據(jù), pm.lastReson()是006異常重啟 ”。

根據(jù)接口文檔相關說明來看,確實不是內(nèi)部看門狗導致的重啟,是異常重啟導致的。

接口文檔詳見:

https://wiki.luatos.com/api/pm.html#pm-lastreson

圖片?

二、了解背景

心想看不出啥具體原因,先了解一下客戶使用背景吧,說不定會有啥線索。

我問:“之前正常,現(xiàn)在是用不了,一直在重啟嗎?”

客戶反饋:“也不是吧,一開始是好的,然后掛了幾個月一直重啟,最近發(fā)現(xiàn),昨天我拿過來掛了一天又正常,然后今天又重啟,老化區(qū)就這個設備會重啟,其他同固件是正常的?!?/p>

我又問:“換DEMO會重啟嗎? 確認一下是硬件問題,還是軟件問題。

客戶反饋:“ 今天測試過,只下載腳本是一定會出問題。 然后我剛剛重新下載底層和腳本,目前五分鐘沒有重啟。”

看上去應該不是硬件問題,可能是軟件引起的。心想讓客戶用最新版本試一下吧,確認一下還會不會出現(xiàn)問題。

客戶反饋:“我們是因為有一個設備到客戶手上有這個問題是V1108的,然后老化區(qū)只有這個設備也是異常重啟,是V1106的,然后就看的這個,后面重新燒錄1106的底層也是正常的,這設備挺難出現(xiàn)這個問題的,只能我們這邊掛著測一下?!?/p>

看來又是一個令人頭大的重啟問題,要等客戶提供底層日志來進一步排除問題了。

三、重要線索


客戶把掛測的底層日志提供過來了,打開后確實看到了RamDumpData開頭的死機信息。

圖片?

打開上面的RamDumpData出現(xiàn)如下信息:

圖片?

我趕緊和研發(fā)大佬確認,可能是啥情況。大佬問答大概率是FLASH壞掉了,讓和客戶確認不是有KV相關的操作。

客戶回答,確實有KV的操作。

本文提到的KV:

KV數(shù)據(jù)庫 ——指的是LuatOS中的FSKV庫,提供鍵值對數(shù)據(jù)庫功能,數(shù)據(jù)持久化在Flash上,使用獨立的KV分區(qū),使用LuaTools刷機時可選擇清空,默認是不清空。由Flash的特性決定了,寫入次數(shù)是有限的,頻繁寫入導致超限后,將無法設置/更新數(shù)據(jù),導致系統(tǒng)異常。

為了進一步驗證猜測,讓客戶做了如下測試:

問:“死機重啟后,燒錄不清除KV試試看還會不會重啟,或者去除KV相關操作看還會不會重啟。”

答:“KV操作挺多的,不好清除,我試下燒錄不清除KV,有時候斷電過一會就好了,不是很好復現(xiàn),我先試試燒錄不清除KV?!?/p>

客戶反饋:“不清除KV也會有重啟?!?/p>

問:“重新燒錄底層的時候,有沒有清理KV。”

答:“有”…

根據(jù)此前客戶反饋和當前測試來看,應該是FALSH模塊有些區(qū)域壞掉了。

四、確認猜測


至此,可以說這個重啟的原因基本是確認了,導致模塊令人琢磨不透的重啟問題的“搗蛋鬼”也基礎上算是給揪出來了。但是,還是需做進一步的測試來確定猜測。

研發(fā)大佬給了一下測試固件,來確認猜測是否正確。

圖片?

經(jīng)過測試驗證后,確定是FALSH部分區(qū)域壞掉引起的重啟。

至此這個“重啟案件”算是偵破了。

給客戶的建議:

要改腳本,需要大幅度減少寫KV的次數(shù),防止破壞模塊重啟的“搗蛋鬼”再次出來搗亂。

溫馨提示:

KV的寫壽命是10萬次,過于頻繁操作可能會導致FLASH壞掉,引起設備反復重啟。

因此,在寫代碼的時候要盡量減少寫KV的次數(shù)。

?審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 數(shù)據(jù)庫

    關注

    7

    文章

    3799

    瀏覽量

    64395
  • 代碼
    +關注

    關注

    30

    文章

    4788

    瀏覽量

    68616
  • LuatOS
    +關注

    關注

    0

    文章

    76

    瀏覽量

    1944
收藏 人收藏

    評論

    相關推薦

    N9H20 GPIO上電竟然是高電平,有沒有辦法解決?

    一直很納悶,GPIO上電竟然是高電平。有沒有辦法解決,是不是要改動啟動程序才能解決問題?
    發(fā)表于 01-17 08:27

    [轉(zhuǎn)帖]這樣的建站程序,竟然是免費的!

    這樣的建站程序,竟然是免費的!廢話就不多說了,大家看了圖再發(fā)表意見吧![/url][url=http://b86.net]這樣的程序,只需要,購買耐思尼克www.b86.net/?s=cartoon
    發(fā)表于 05-22 16:06

    SRTP,被刷下來了,原因竟然是抽簽被抽到

    本帖最后由 iiio051031448 于 2012-4-1 12:36 編輯 SRTP,被刷下來了,如果是項目不合理,或者沒有別人的好,我也就認了,自己能力不行。原因竟然是抽簽被抽到,就你不行我還能相信學校么?!
    發(fā)表于 04-01 01:00

    影響PCB價格的因素竟然是這些,表示都忽略了

    影響PCB價格的因素竟然是這些,表示都忽略了
    發(fā)表于 04-09 19:41

    今年竟然沒給運放怎么

    全國大學生單子設計競賽今年竟然沒給運放怎么
    發(fā)表于 08-06 14:45

    【NUCLEO-F412ZG試用體驗】Nucleo412竟然是6層板

    本帖最后由 zpzdd 于 2017-2-28 09:37 編輯 看了板子的圖紙才知道Nucleo412竟然是6層板,ST真是大手筆啊
    發(fā)表于 02-28 09:36

    AD421供電問題,Vcc引腳輸出竟然是12v是怎么回事?

    電路圖,如圖所示,mosfet采用,ND2020l,VCC竟然是12v,這是怎么回事呢?如何解決?謝謝!
    發(fā)表于 09-26 15:34

    電磁爐干燒的原因竟然是最不起眼的小元件!

    `電磁爐干燒的原因竟然是不起眼的小元件你知道嗎隨著科技的發(fā)展,電磁爐使用頻率越來頻繁,加熱,炒菜,等等…大部分食材都會用到電磁爐,現(xiàn)如今電磁爐都有一套保護系統(tǒng),可是還是會出現(xiàn)干燒,不加熱故障
    發(fā)表于 07-20 09:59

    聯(lián)想Z5重啟事件查明原因,竟然是工程師大意所為

    最近關于聯(lián)想Z5重啟的事情鬧得沸沸揚揚,在聯(lián)想為Z5用戶推送了ZUI3.9.108穩(wěn)定版之后,不少升級的用戶表示手機自動重啟,給很多用戶的日常生活帶來了不小的麻煩。為此有的用戶還恢復了出廠設置, 付出了慘重的代價。雖然官方給與了道歉,不過顯然不能彌補用戶的損失。
    發(fā)表于 07-30 17:43 ?4119次閱讀

    在Kubernetes集群發(fā)生網(wǎng)絡異常時如何排查

    本文將引入一個思路:“在 Kubernetes 集群發(fā)生網(wǎng)絡異常時如何排查”。文章將引入 Kubernetes 集群中網(wǎng)絡排查的思路,包含網(wǎng)絡異常模型,常用工具,并且提出一些案例以供學
    的頭像 發(fā)表于 09-02 09:45 ?4792次閱讀

    程序員節(jié) | 今年程序員們都想要的禮物竟然是……

    原文標題:程序員節(jié) | 今年程序員們都想要的禮物竟然是…… 文章出處:【微信公眾號:微軟科技】歡迎添加關注!文章轉(zhuǎn)載請注明出處。
    的頭像 發(fā)表于 10-24 10:35 ?516次閱讀
    程序員節(jié) | 今年程序員們都想要的禮物<b class='flag-5'>竟然是</b>……

    你不知道的FPC,它的發(fā)展史竟然是這樣的!

    你不知道的FPC,它的發(fā)展史竟然是這樣的!
    的頭像 發(fā)表于 11-15 10:48 ?1311次閱讀

    Java怎么排查oom異常

    據(jù)量的應用中。要排查OOM異常,需要經(jīng)過以下幾個步驟: 理解OOM異常原因:OOM異常通常有以下幾個
    的頭像 發(fā)表于 12-05 13:47 ?1253次閱讀

    令人頭疼的異常重啟,竟然是KV的鍋…

    合宙模組異常重啟原因排查
    的頭像 發(fā)表于 09-26 18:14 ?434次閱讀
    令人頭疼的<b class='flag-5'>異常</b><b class='flag-5'>重啟</b>,<b class='flag-5'>竟然是</b>KV的鍋…

    遠程升級頻頻失???原因竟然是

    ?最近有客戶反饋在鄉(xiāng)村里頻繁出現(xiàn)掉線的情況。 趕緊排查原因! 通過換貨、換SIM卡對比排查測試,發(fā)現(xiàn)只有去年采購的那批模塊在客戶環(huán)境附近會出現(xiàn)掉線的情況,而今年采購的模塊批次就不會掉線。。。 繼續(xù)
    的頭像 發(fā)表于 10-14 07:07 ?174次閱讀
    遠程升級頻頻失敗?<b class='flag-5'>原因</b><b class='flag-5'>竟然是</b>…