hanako
2018年8月29日 16時54分
Armadillo-IoT G3 M1モデルを使用し、(WiFiルータではない)WiFi-APの設定を試みています。
hostapd Ver.2.4をインストールし、各種設定を行い、
温度センサからWiFi-APへ接続を試みますと、Armadilloがリブートしてしまいます。
リブート直前に、
「WPA: pairwise key handshake completed (RSN)」
というログが出ていました。
今回使用している温度センサは、以下の通りです。
株式会社ティアンドデイ TR-7wfシリーズ
Armadillo-IoT G3 M1モデルに設定した内容を
Armadillo-IoT G3に反映して試したところ、
温度センサから接続してもリブートすることはありませんでした。
Armadillo-IoT G3では、hostapd Ver.2.3となっていました。
ちなみに、Armadillo-IoT G3 M1モデルに
hostapd Ver.2.3をインストールし、
温度センサから接続すると、リブートします。
リブートの原因がつかめていない状況です。
上記現象から、何が原因であるか推測できますでしょうか?
●Armadillo-IoT G3 M1モデルのセットアップに使用したファイル
u-boot-x1-at17.bin
uImage-x1-v4.9-at2
armadillo_iotg_g3_m1-v4.9-at2.dtb
debian-stretch-armhf_aiotg3_20180621.tar.gz
●インストールしたパッケージ
ifupdown、ssh、hostapd、isc-dhcp-server
※/etc/network/interfacesを使った方法でArmadilloを設定するため、
ifupdownをインストール
●hostapd.confの設定
interface=wlan0
driver=nl80211
ssid=testap123
hw_mode=g
channel=3
ieee80211n=1
wmm_enabled=1
ht_capab=[HT40][SHORT-GI-20][DSSS_CCK-40]
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_key_mgmt=WPA-PSK
wpa_passphrase=testap123
rsn_pairwise=CCMP
コメント
hanako
ご連絡ありがとうございます。
Armadillo IoT G3で確認はできておりませんが、
Raspberry PiからArmadillo-IoT G3 M1に接続してみた限りでは
リブートしませんでした。
リブート発生時のログを採取しましたので、添付致します。
※hostapd.confの内容とリブート発生時のログを添付します
※ログ採取時の手順は、
rootで「hostapd -dd -t /etc/hostapd/hostapd.conf」を実行しました。
ログを確認する限り、nl80211で処理が行われている際に、
リブートしているように見受けられます。
添付ファイルをご確認頂き、何か気づきがございましたら、
ご教授いただければ幸いです。
ファイル | ファイルの説明 |
---|---|
hostapd.conf_.txt | |
log1.txt | |
log2.txt | |
log3.txt |
at_mizo
溝渕です。
ご確認いただき有難うございます。
> 添付ファイルをご確認頂き、何か気づきがございましたら、
リブートしない状態(ap:G3 M1, sta:G3)のログと比較してみましたが、特徴的
な差異は見当りませんでした。
リブートするという挙動からの推測ですが、Linuxカーネル内でのデッドロッ
クを疑っています。
添付のパッチを適用後、デフォルトコンフィギュレーションを適用したLinux
カーネルで動作確認してみていただけますか。
正しく変更を適用したLinuxカーネルで起動したことは、次のように確認する
ことができます("CONFIG_DEBUG_SPINLOCK=y"と出力されると正しいです)。
root@armadillo:~# zcat /proc/config.gz | grep DEBUG_SPINLOCK
CONFIG_DEBUG_SPINLOCK=y
hanako
溝渕様
ご連絡ありがとうございます。
> 添付のパッチを適用後
申し訳ございませんが、添付が見当たらなかったのですが。
再度、添付いただけますか?
> 溝渕です。
>
> ご確認いただき有難うございます。
>
> > 添付ファイルをご確認頂き、何か気づきがございましたら、
>
> リブートしない状態(ap:G3 M1, sta:G3)のログと比較してみましたが、特徴的
> な差異は見当りませんでした。
>
> リブートするという挙動からの推測ですが、Linuxカーネル内でのデッドロッ
> クを疑っています。
>
> 添付のパッチを適用後、デフォルトコンフィギュレーションを適用したLinux
> カーネルで動作確認してみていただけますか。
>
> 正しく変更を適用したLinuxカーネルで起動したことは、次のように確認する
> ことができます("CONFIG_DEBUG_SPINLOCK=y"と出力されると正しいです)。
>
>
> root@armadillo:~# zcat /proc/config.gz | grep DEBUG_SPINLOCK
> CONFIG_DEBUG_SPINLOCK=y
>
>
at_mizo
溝渕です。
> > 添付のパッチを適用後
> 申し訳ございませんが、添付が見当たらなかったのですが。
> 再度、添付いただけますか?
添付忘れです。申し訳ございません。
ファイル | ファイルの説明 |
---|---|
linux-4.9-x1-at2_debug-lock.patch |
hanako
at_mizo
溝渕です。
> パッチの適用方法、
Linuxカーネルのソースに移動して、patchコマンドでパッチを適用します。
[atde]$ cd linux-4.9-x1-at2
[atde]$ patch -p 1 < [パッチをダウンロードしたパス]/linux-4.9-x1-at2_debug-lock.patch
> デフォルトコンフィギュレーションの適用方法をご教授頂けますか?
以下のドキュメントを参考にしてください。
https://manual.atmark-techno.com/armadillo-iot-g3/armadillo-iotg-g3_pro…
[atde]$ cd linux-4.9-x1-at2
[atde]$ make ARCH=arm x1_defconfig
hanako
at_mizo
hanako
hanako
at_mizo
溝渕です。
ご対応ありがとうございます。
> 今回の問題と何か関係しますでしょうか?
ログによると、lock変数が適切に初期化されていないようなので、関係がある
可能性もあります。
ちなみに、ログの該当箇所は、以下でlockを取得しようとしているところです。
drivers/net/wireless/ath/ath9k/xmit.c
1982: void ath_txq_schedule(struct ath_softc *sc, struct ath_txq *txq)
1983: {
:(snip)
1996: spin_lock_bh(&sc->chan_lock);
現在のところ、解決には至っていません。
hanako
at_mizo
hanako
at_mizo
溝渕です。
不正なlockを取得する可能性があるところがありました。
mainlineでは次のように修正されています。
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/comm…
恐らくこれで改善できると思います。上記をパッチファイルにしたものを添付します。
ファイル | ファイルの説明 |
---|---|
0001-ath9k-clean-up-and-fix-ath_tx_count_airtime.patch |
y.nakamura
中村です。
> 恐らくこれで改善できると思います。上記をパッチファイルにしたものを添付します。
溝渕さん、ありがとうございます。
8月31日に
https://armadillo.atmark-techno.com/forum/armadillo/3483#comment-6001
で報告していた、問題が発生したパソコンの持ち主に
今回のパッチを試してもらっところ、
Armadilloが落ちる(再起動する)ことはなくなったとの
連絡をもらいました。
当面は、このパッチをあてたものを使うことにします。
--
なかむら
at_mizo
y.nakamura
中村です。
つい最近のことですが、知り合いのところでも
wifi接続するとArmadilloが再起動してしまう問題が出てまして、
同じ原因のような気がしますので、
状況をお知らせしておきます。
Armadillo-IoT G3(旧)
linux-4.9-x1-at2
Debian/Stretch
です。
カーネルは1か所だけコンフィグレーションを変更して
あるドライバを有効にしていますが、
今回の問題とは関係ないと思いますので、
その情報は省略させてもらいます。
ArmadilloのWiFi設定は、
https://armadillo.atmark-techno.com/forum/armadillo/2132
で古賀さんが書いてくれていたWiFiルータ化とほぼ同じです。
SORACOMのSIMを使って3Gも有効にしてあります。
この設定で、パソコンからWiFi接続して、
Armadilloのwebサーバ(http://10.42.0.1/)アクセスすると、
Armadilloが再起動してしまいます。
いろいろ試してみてもらっていたのですが、
パソコンを別のものに変更したら問題は発生しなくなった、
との連絡が今日ありました。
その問題が出るパソコンでも、
G3(旧)、linux-3.x、Debian/Jessie
ArmadilloのWiFiは同じ設定では
問題は出ておらず、
カーネル4.9、Debian/Stretchへの
移行作業でこの問題に遭遇しました。
--
なかむら
at_mizo
溝渕です。
ご報告有難うございます。
> この設定で、パソコンからWiFi接続して、
> Armadilloのwebサーバ(http://10.42.0.1/)アクセスすると、
> Armadilloが再起動してしまいます。
上記現象が発生するパソコンの、WLANチップとOSをご教授いただくことは可能
でしょうか。
y.nakamura
中村です。
溝渕さん、
対応、ありがとうございます。
> > この設定で、パソコンからWiFi接続して、
> > Armadilloのwebサーバ(http://10.42.0.1/)アクセスすると、
> > Armadilloが再起動してしまいます。
>
> 上記現象が発生するパソコンの、WLANチップとOSをご教授いただくことは可能
> でしょうか。
問題のパソコンのメーカー型番などは
lenovo T440p
Windows8.1 64ビット
とのことでした。
WiFiチップは、所有している人(今回の問題に遭遇した人)に
調べてもらますので、少々お待ちください。
--
なかむら
at_mizo
y.nakamura
y.nakamura
中村です。
> 2x2 11b/g/n Wireless LAN M.2 Adapter
> 製造元: Realtek Semiconductor Corp.
> パージョン: 2012.2.827.2013
プロパティ画面の画像を添付しておきます。
(投稿が2つに分かれてしまって、すみません)
--
なかむら
ファイル | ファイルの説明 |
---|---|
pasted-2018.09.03-17.21.13.png | |
pasted-2018.09.03-17.21.35.png |
at_hanada
> > 2x2 11b/g/n Wireless LAN M.2 Adapter
> > 製造元: Realtek Semiconductor Corp.
Realtekモジュールのものでしたか、ちょっと調べてみたところRTL8192EE(BT搭載)のようですね。
> > パージョン: 2012.2.827.2013
緊急のもの含めいくつか新しいバージョンのドライバがリリースされていましたが、問題の再現性が同じかどうかわからないので重要な情報です。
ありがとうございます。
Realtek Wireless LAN Adapter Software for Windows 8.1 (64-bit) - Laptops
https://pcsupport.lenovo.com/us/en/downloads/ds040240
> 2012.2.827.2013 / 1.00.0227
at_mizo
2018年8月30日 13時17分
溝渕です。
> 株式会社ティアンドデイ TR-7wfシリーズ
上記デバイスが手元に無かったので、Armadillo-IoT G3からArmadillo-IoT G3
M1に接続してみましたが、現象を再現することができませんでした。
問題の切り分けを行うため、同様の手順を試してみていただけますか。
宜しくお願いいたします。