tsato_814
2023年5月15日 15時50分
お世話になります。佐藤と申します。長文失礼します。
現在弊社では、客先からの依頼で、Armadillo-X1基板を使用した、ゲートウェイ製品を生産しています。
この際、以下のような2種類の不具合が発生しており、工数の増大につながっています。
あくまでも、工場出荷状態のX1基板ではなく、客先のアプリなどがインストールされていて、
複数のアプリ/デーモンなどが実行されている状態です。
したがいまして、原因について確定的な回答は頂けないと思いますが、何かヒントなど、
お気づきのことがあれば、ご教示願えないかと思っている次第です。
1. 「halt」コマンドを実行して、シャットダウン後、電源を切ろうとしているが、
シャットダウンせずに(「reboot: System halted」が表示されずに)再起動してしまう。
2. 起動後、ログインし、いくつかのコマンドを実行した後、しばらく放置していて、
何もしていないのに、勝手に再起動してしまう。
1については、5台に1台くらいの頻度で発生しています。
同じ基板でも、1回だけしか発生しなかったり、2回続くこともあります。
したがって、基板によるものではなく、ある頻度でランダムに発生しているような感じです。
2については、50台中2台程度の発生頻度です。
USBシリアル変換アダプタを、X1基板のCON4に接続しており、CON4からの出力を添付します。
1が発生した際の、CON4出力を「halt時_reboot_2回連続.txt.txt」に添付します。
13行目に「halt」を実行していますが、「imx2-wdt 30280000.wdog: Device shutdown: Expect reboot!」や
「reboot: System halted」が表示されずに、137行目から再起動しています。
なお、この時は、2回連続発生していて、同じく742行目に「halt」を実行していますが、
863行目から再起動しています。
2が発生した際の、CON4出力を「login後プロンプト表示_放置時_reboot.txt」に添付します。
18行目は、一部割愛させて頂いていますが、こちらで複数のコマンド実行とその応答が表示され、
19行目のプロンプトが表示されたあと、しばらく放置していて、
その後「ci_hdrc ci_hdrc.1: remove, state 1」と「usb usb2: USB disconnect, device number 1」が
表示され、22行目から再起動しています。
残念ながら、2つの現象とも、syslogなどは取っていません。
2は発生頻度が低いので難しいかもしれませんが、1は、必要であれば、syslogなどをとることは可能です。
Armadillo-X1 製品マニュアル Version 3.1.1のP.111「7.3.18. ウォッチドッグタイマー」の項に、
「i.MX 7Dual の WDOG は、一度有効化すると無効化することができませ
ん。そのため、halt コマンドなどを実行してLinux カーネルを停止した
場合は、ウォッチドッグタイマーのキックができなくなるためシステムリ
セットが発生します。」
という記載がありますが、1項の現象は、これによるもので、例えば、haltによりシャットダウンしたいのに、
カーネルが停止されたことでWDTのキックができなくなって、システムリセットによって、
先に再起動してしまう、という現象は考えられるでしょうか?
その場合、例えば、一時的にWDTのタイマーを128秒に設定してから、「halt」を実行するなどで、
対処は可能でしょうか。(ただし、128秒の設定は一時的であり、再電源投入時は、通常のタイマにしたい。)
また、2項については、これもWDTがらみで、客先アプリなどによる原因で、WDTのキックができなくて、
システムリセットによって、再起動してしまっているのではないかと推測しています。
ただし、客先アプリについては当方では内容をわかっておらず、また、これについては、
このフォーラムで聞いてもわからないことなので、ここでお聞きしたいのは、
再起動時に表示された、「ci_hdrc ci_hdrc.1: remove, state 1」と
「usb usb2: USB disconnect, device number 1」について何かヒントがあれば
ご教示願いたいということです。
それを把握した上で、客先に確認したいと思っています。
以上、よろしくお願いします。
ファイル | ファイルの説明 |
---|---|
halt時_reboot_2回連続.txt | |
login後プロンプト表示_放置時_reboot.txt |
コメント
at_koseki
tsato_814
古関様、御連絡ありがとうございます。佐藤です。
> 終了時はhaltではなく、poweroffコマンドを実行していただけますでしょうか。
了解しました。今後は、haltではなく、poweroffコマンドを実行して様子を見てみます。
ただ、今回の生産ロット分は本日で終了してしまいました。
次の生産は今月中には可能と思いますので、そこで確認したいと思います。
> それとも、halt後、128秒よりも短い時間で再起動が起きてしまうでしょうか。
これに関しては、128秒よりも短い時間で再起動が起きた可能性が高いと思っています。
(確実ではありませんが)
当方でも、haltコマンドを実行し、「reboot: System halted」が表示されたあとでも。
そのまま電源を抜かないとリブートすることは把握していて、「reboot: System halted」が
表示された後は、速やかに電源を抜いています。
(128秒というのは分かっていなかったし、poweroffコマンドだとリブートしないことも
分かっていませんでしたが。)
しかし、今回の現象は、添付したCON4出力のファイルにあるように、
「reboot: System halted」が表示されないうちにリブートしています。
シャットダウンに2分以上かかっていたのかもしれませんが、通常はもっと早く終了しているはずです。
> 申し訳ありません、2はsyslogを取るのが難しいのですね。
2 の現象が発生した際に、どのX1基板で起きたのか控えていれば、syslogを取ることは可能です。
(今回は、どの個体で起きたのか、作業者が控えていなかったため、できませんでした。)
ただし、発生頻度が低いので、次のロットで発生するかわからないため、syslogを取るのが
難しいと表現した次第です。
以上、よろしくお願いします。
at_koseki
tsato_814
佐藤です。対応が遅くなり申し訳ありません。
またしても長文になります。
> * リブートは個体に依存して起きるのでしょうか?
> (再現している個体と、していない個体がある)
必ず起きる、あるいは必ず起きない、と断言できるような
頻度でもないため、断定はできませんが、
個体に依存はしていないものと考えています。
(最初の、5/15 15:50の投稿に記載したとおり、
「基板によるものではなく、ある頻度でランダムに発生している」
と考えています。)
> * 問題の個体をインストールディスク等で初期化した場合でも再現するでしょうか?
> (お客様のアプリケーションに依存して出るのか、そうでないのか)
これについては、まだ実施していません。
頻度から考えて、10台程度初期化して、かつそれぞれ5回ぐらいやってみた上で、
全然再現しない、ということであれば、客先アプリに依存したもの、
と判断できるとは思いますし、逆に少ない台数/回数でも再現するのであれば、
客先アプリに依存しない、と言えるとは思いますが、それぞれ逆の結果になってしまうと、
判断が難しいと思いますので、なかなか実施できません。
ただ、このフォーラムを見た限り、他のお客様であまり発生していないようなので、
客先アプリ依存なのかも、と思ったりしています。
「1」の現象に関するコメントで、「halt」コマンドと「poweroff」コマンドについて
ご説明頂きましたが、その内容から以下のように推測しました。
1) 「halt」コマンドでは、Linuxカーネルを停止する前に、WDTのタイマーを128秒に
設定してから、カーネルを停止するので、128秒以内では再起動せず、
しかし、電源を切らないでいると、128秒後に再起動する。
2) 「poweroff」では、Linuxカーネルを停止する前に、WDT自体を無効にするので、
電源を切らないでも、ずっと再起動しない。
ということで、「poweroff」コマンドでやれば再起動しない、と推測しました。
ただ、実は今回のロットの生産が一昨日で終了せずに、1台だけうまくいかなかったため、
昨日現場に行って確認した際、試しに「poweroff」コマンドで終了していましたが、
一度だけ、やはり再起動してしまいました。もちろん128秒は経過していません。
推測が違っていたのか、あるいはWDTによる再起動ではないということなのか。
その際のコンソール出力を「poweroffでもreboot.txt」に添付します。
20行目で「poweroff」コマンドを実行しており、シャットダウン途中、
128行目が出力した後、129行目から再起動しています。
一方、poweroffコマンドで正常にシャットダウンした際のコンソール出力を
「poweroffで正常ダウン.txt」に添付します。
44行目で「poweroff」コマンドを実行しており、161行目で正常シャットダウン終了
しています。
ただし、この再起動については、個体依存の可能性も高いです。
この2つの添付ファイルは、同じX1基板のものですが、「poweroffでもreboot.txt」の
507行目や550行目以降にあるように、「usb 2-1:~」の出力で「error -71」が多発しています。
はっきりはしていませんが、AEH-AR9462モジュールとのI/Fで何らかの不具合がある
基板のようです(実際に客先アプリにてBluetoothが接続できない個体)。
ちなみに、5/15 15:50の投稿に添付したコンソール出力では(添付した箇所以外の前後も含め)
「error -71」出力は一切出ていません。
ということで、
a) 今回添付のものは「poweroff」コマンドでシャットダウンしようとしたが、
個体不具合のため、再起動してしまった。
b) 前回添付のものは、個体不具合はない?が「halt」コマンドでシャットダウンしようと
したため、再起動してしまった。
ということかもしれません。
(「halt時_reboot_2回連続.txt」の1回目のrebootの際、再起動直前の135行目に
「rndis_host 1-1:2.0 eth1: unregister 'rndis_host' usb-ci_hdrc.0-1, RNDIS device」
という出力がありますが、以前この表示のあと、しばらく出力が停止したことがあった記憶があり、
これにより128秒経過してしまった可能性もあります。
ただ、なぜそこで停止してしまうことがあるのか、という疑問はありますが)
また、5/15 20:30のコメントで頂いていたご質問に
回答していなかった件がありましたので、回答します。
「2」の現象についてです。
> * 何かUSBデバイスを接続しているでしょうか?
> * もしそうである場合、起動後にUSBデバイスを活線挿抜しているでしょうか?
接続されているUSBは2つあります。
1つは、CON2(USB TypeAコネクタ)にUSBケーブル経由で、
別の機器を接続していますが、起動前も起動後もずっと接続されており、
活線挿抜することはありません。接触不良などで、接続と接続断が
繰り返されていれば別ですが。
なお、本機器は、USB経由でLAN接続するRNDIS機能をもったものです。
もう1つは、本X1基板は、WLAN+BTコンボ製品であり、AEH-AR9462モジュールが
搭載されているため、X1基板上のUSB HUB経由で、CON3を通して、
そのモジュールと接続されています。
これも当然活線挿抜することはありません。
以上、よろしくお願いします。
ファイル | ファイルの説明 |
---|---|
poweroffでもreboot.txt | |
poweroffで正常ダウン.txt |
at_koseki
2023年5月15日 20時30分
古関です。
> 1. 「halt」コマンドを実行して、シャットダウン後、電源を切ろうとしているが、
> シャットダウンせずに(「reboot: System halted」が表示されずに)再起動してしまう。
終了時はhaltではなく、poweroffコマンドを実行していただけますでしょうか。
haltしても、その状態で電源を抜かずにいると128秒後にリブートしてしまう制約があります。
https://manual.atmark-techno.com/armadillo-x1/armadillo-x1_product_manu…
poweroffコマンドを実行した場合、128秒後にリブートしません。
マニュアルの終了方法がhaltとなっていますが、
この手順が適切ではないため修正いたします。
ご迷惑をお掛けし申し訳ございません。
https://manual.atmark-techno.com/armadillo-x1/armadillo-x1_product_manu…
それとも、halt後、128秒よりも短い時間で再起動が起きてしまうでしょうか。
> 2. 起動後、ログインし、いくつかのコマンドを実行した後、しばらく放置していて、
> 何もしていないのに、勝手に再起動してしまう。
> usb usb2: USB disconnect, device number 1」について何かヒントがあれば
はい。ご指摘の通り、こちらでもここを疑っています。
* 何かUSBデバイスを接続しているでしょうか?
* もしそうである場合、起動後にUSBデバイスを活線挿抜しているでしょうか?
また、症状が起きたときのコンソールではなく
/var/log/syslogをいただくことはできるでしょうか。
よろしくお願いいたします。