Re: brcmfmac: error messages while entering suspend

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Arend,

[add Johannes]

Am 04.11.24 um 11:06 schrieb Arend van Spriel:
On November 3, 2024 12:01:55 PM Stefan Wahren <wahrenst@xxxxxxx> wrote:

Hi,
I'm currently working on s2idle support for Raspberry Pi 3B+ (BCM43455
SDIO). During the tests with I noticed harmless, but annoying error
messages from brcmfmac like this:

[  383.186640] PM: suspend entry (s2idle)
[  383.190107] Filesystems sync: 0.003 seconds
[  383.247470] Freezing user space processes
[  383.250291] Freezing user space processes completed (elapsed 0.002
seconds)
[  383.250379] OOM killer disabled.
[  383.250385] Freezing remaining freezable tasks
[  383.251677] Freezing remaining freezable tasks completed (elapsed
0.001 seconds)
[  384.292071] ieee80211 phy0: brcmf_fil_cmd_data: bus is down. we have
nothing to do.
[  384.292079] ieee80211 phy0: brcmf_cfg80211_get_tx_power: error (-5)

These errors are not new and I assume they have always been there. I'm
not an expert here, so I want to know is the problem here that the SDIO
interface is shutdown before brcmfmac is suspended or lies the issue
within brcmfmac suspend itself?

Hi Stefan,

Upon suspend we execute the remove path and cleaning the interfaces.
We notify cfg80211 about the removal, which in turn will notify
userspace, but is tries to obtain the tx power from brcmfmac. However,
at this stage the communication with the dongle is already gone. These
messages are also seen in the module unload scenario. It seems a bit
redundant to query a device that is going to be removed. So it could
be fixed by chiming down those message or avoid it completely by
changing the behavior in cfg80211.
chiming down all the affected messages (i reported only one example
here) sounds strange to me. Maybe Johannes has also a opinion about this.

Regards

Regards,
Arend

Here is a calltrace for the error above:

[  384.291308]  brcmf_fil_cmd_data+0xe0/0x114 [brcmfmac] (P)
[  384.291347]  brcmf_fil_iovar_data_get+0xcc/0x134 [brcmfmac] (L)
[  384.291384]  brcmf_fil_iovar_data_get+0xcc/0x134 [brcmfmac]
[  384.291420]  brcmf_cfg80211_get_tx_power+0x58/0xd4 [brcmfmac]
[  384.291458]  nl80211_send_iface+0x1e8/0x584 [cfg80211]
[  384.291549]  nl80211_notify_iface+0x58/0xd4 [cfg80211]
[  384.291615]  _cfg80211_unregister_wdev+0x40/0x27c [cfg80211]
[  384.291682]  cfg80211_unregister_wdev+0x14/0x20 [cfg80211]
[  384.291748]  brcmf_p2p_ifp_removed+0x6c/0x98 [brcmfmac]
[  384.291785]  brcmf_remove_interface+0x170/0x1ec [brcmfmac]
[  384.291822]  brcmf_detach+0x60/0xfc [brcmfmac]
[  384.291859]  brcmf_sdio_remove+0x4c/0x188 [brcmfmac]
[  384.291896]  brcmf_sdiod_remove+0x24/0xa4 [brcmfmac]
[  384.291933]  brcmf_ops_sdio_suspend+0x100/0x1c8 [brcmfmac]
[  384.291971]  pm_generic_suspend+0x2c/0x44
[  384.291982]  dpm_run_callback.constprop.0+0x74/0x134
[  384.291993]  device_suspend+0x110/0x3d0
[  384.292002]  async_suspend+0x24/0x3c
[  384.292012]  async_run_entry_fn+0x34/0xe0
[  384.292022]  process_one_work+0x150/0x294
[  384.292032]  worker_thread+0x2dc/0x3dc
[  384.292041]  kthread+0x118/0x11c
[  384.292049]  ret_from_fork+0x10/0x20

Best regards








[Index of Archives]     [Linux Memonry Technology]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux