k_tomita
2022年12月12日 9時31分
WLAN+BTコンボモジュールの先行評価を行っています。
hostapdにより無線APとして運用しているのですが、クライアントへのIP付与時、dmesgに下記メッセージが出力されています。
(クライアント側ではIPの取得はされている)
モジュール変更前はこのような出力は無かったのですが、問題は無いのでしょうか?
[ 9064.621919] [dhd] CFG80211-ERROR) wl_cfg80211_change_station : WLC_SCB_AUTHORIZE sta_flags_mask not set
[ 9064.642080] NOHZ: local_softirq_pending 08
[ 9064.645991] [dhd] CFG80211-ERROR) wl_cfg80211_get_key : Invalid algo (0x44)
[ 9064.657336] NOHZ: local_softirq_pending 08
[ 9065.090376] NOHZ: local_softirq_pending 08
[ 9065.130063] NOHZ: local_softirq_pending 08
[ 9065.619350] NOHZ: local_softirq_pending 08
[ 9065.903370] NOHZ: local_softirq_pending 08
[ 9065.947118] NOHZ: local_softirq_pending 08
[ 9066.078889] NOHZ: local_softirq_pending 08
[ 9066.087684] NOHZ: local_softirq_pending 08
[ 9066.255611] NOHZ: local_softirq_pending 08
設定方法は下記を参考にしています。
https://armadillo.atmark-techno.com/blog/615/6824
下記がhostapdの設定となります。
atmark@armadillo:/etc/hostapd$ less hostapd.conf
interface=wlan0
driver=nl80211
ssid=xxxxxxxx
hw_mode=g
channel=10
ieee80211n=1
wpa=2
wpa_passphrase=xxxxxxxx
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP
以上
コメント
k_tomita
冨田と申します。
溝渕さま、御返信ありがとうございます。
local_softirq_pendingの件、了解いたしました。
メッセージの出力要因の件、よろしくお願いいたします。
> 溝渕です。
>
> > NOHZ: local_softirq_pending 08
> これは、基本的にはsoftirqの登録/実行完了のタイミングの重複によって出るメッセージです。登録されたsoftirqは後に実行される為、このメッセージ自体は問題無いです。
>
> > [dhd] CFG80211-ERROR) wl_cfg80211_change_station : WLC_SCB_AUTHORIZE sta_flags_mask not set
> > [dhd] CFG80211-ERROR) wl_cfg80211_get_key : Invalid algo (0x44)
> この2つは、先に述べましたsoftirqがペンディングされたことによるものではないかと推測しています。この推測が正しい場合、動作に問題は出ないかと思います。
>
> 私の手元でも同様のメッセージが確認できましたが、動作に問題は出ていません。
>
> "[dhd]"ではじまる2つのメッセージの出力要因についてはもう少し調査したいと思います。
>
at_mizo
溝渕です。
> [dhd] CFG80211-ERROR) wl_cfg80211_change_station : WLC_SCB_AUTHORIZE sta_flags_mask not set
これは不要なメッセージである為、次回アップデート時に出力されないよう修正予定です。
このメッセージは、IEEE802.11 authenticationの前に、Station側からのNL80211_CMD_SET_STATIONを受信した場合に必ず出力されてしまいます。Linux kernelに含まれるBroadcomのドライバでは認証前には未処理で抜けているように、エラーメッセージを出力すべきでは無いと判断できます。
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c: static int brcmf_cfg80211_change_station(struct wiphy *wiphy, struct net_device *ndev, const u8 *mac, struct station_parameters *params) { :snip if (!(params->sta_flags_mask & BIT(NL80211_STA_FLAG_AUTHORIZED))) return 0;
> [dhd] CFG80211-ERROR) wl_cfg80211_get_key : Invalid algo (0x44)
これは、まだ調査仮定です。
このメッセージは、暗号化方式が適切に判別できていない為に出力されていますが、これによって実質的に問題は生じていません。次のようにするとメッセージは出力されなくなります。
--- a/drivers/net/wireless/bcmdhd/Makefile +++ b/drivers/net/wireless/bcmdhd/Makefile @@ -41,7 +41,7 @@ DHDCFLAGS = -Wall -Wstrict-prototypes -Wno-date-time \ -DPOWERUP_MAX_RETRY=0 -DIFACE_HANG_FORCE_DEV_CLOSE -DWAIT_DEQUEUE \ -DUSE_NEW_RSPEC_DEFS \ -DWL_EXT_IAPSTA -DWL_ESCAN -DCCODE_LIST \ - -DENABLE_INSMOD_NO_POWER_OFF -DDHD_USE_FIRMWARE_CLASS + -DENABLE_INSMOD_NO_POWER_OFF -DDHD_USE_FIRMWARE_CLASS -DWLWSEC
k_tomita
溝渕さま、回答頂きありがとうございます。
出力されているメッセージに問題は無いとの事ですので、iperfで負荷テストを実施
してみようと思います。
ありがとうございました。
> 溝渕です。
>
> > [dhd] CFG80211-ERROR) wl_cfg80211_change_station : WLC_SCB_AUTHORIZE sta_flags_mask not set
>
> これは不要なメッセージである為、次回アップデート時に出力されないよう修正予定です。
>
> このメッセージは、IEEE802.11 authenticationの前に、Station側からのNL80211_CMD_SET_STATIONを受信した場合に必ず出力されてしまいます。Linux kernelに含まれるBroadcomのドライバでは認証前には未処理で抜けているように、エラーメッセージを出力すべきでは無いと判断できます。
>
>
> drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c: > static int > brcmf_cfg80211_change_station(struct wiphy *wiphy, struct net_device *ndev, > const u8 *mac, struct station_parameters *params) > { > :snip > if (!(params->sta_flags_mask & BIT(NL80211_STA_FLAG_AUTHORIZED))) > return 0; >
>
> > [dhd] CFG80211-ERROR) wl_cfg80211_get_key : Invalid algo (0x44)
>
> これは、まだ調査仮定です。
>
> このメッセージは、暗号化方式が適切に判別できていない為に出力されていますが、これによって実質的に問題は生じていません。次のようにするとメッセージは出力されなくなります。
>
>
> --- a/drivers/net/wireless/bcmdhd/Makefile > +++ b/drivers/net/wireless/bcmdhd/Makefile > @@ -41,7 +41,7 @@ DHDCFLAGS = -Wall -Wstrict-prototypes -Wno-date-time \ > -DPOWERUP_MAX_RETRY=0 -DIFACE_HANG_FORCE_DEV_CLOSE -DWAIT_DEQUEUE \ > -DUSE_NEW_RSPEC_DEFS \ > -DWL_EXT_IAPSTA -DWL_ESCAN -DCCODE_LIST \ > - -DENABLE_INSMOD_NO_POWER_OFF -DDHD_USE_FIRMWARE_CLASS > + -DENABLE_INSMOD_NO_POWER_OFF -DDHD_USE_FIRMWARE_CLASS -DWLWSEC >
>
at_mizo
at_mizo
2022年12月12日 13時39分
溝渕です。
> NOHZ: local_softirq_pending 08
これは、基本的にはsoftirqの登録/実行完了のタイミングの重複によって出るメッセージです。登録されたsoftirqは後に実行される為、このメッセージ自体は問題無いです。
> [dhd] CFG80211-ERROR) wl_cfg80211_change_station : WLC_SCB_AUTHORIZE sta_flags_mask not set
> [dhd] CFG80211-ERROR) wl_cfg80211_get_key : Invalid algo (0x44)
この2つは、先に述べましたsoftirqがペンディングされたことによるものではないかと推測しています。この推測が正しい場合、動作に問題は出ないかと思います。
私の手元でも同様のメッセージが確認できましたが、動作に問題は出ていません。
"[dhd]"ではじまる2つのメッセージの出力要因についてはもう少し調査したいと思います。