[SRU][M][PATCH 0/1] Fix iwlwifi crash on BE200
Aaron Ma
aaron.ma at canonical.com
Wed Mar 27 12:45:51 UTC 2024
BugLink: https://bugs.launchpad.net/bugs/2058808
[Impact]
iwlwifi crashed with the following error log:
[ 282.045897] Invalid rxb from HW 0
[ 282.045941] WARNING: CPU: 3 PID: 784 at drivers/net/wireless/intel/iwlwifi/pcie/rx.c:1489 iwl_pcie_rx_handle+0x3ce/0x640 [iwlwifi]
......
[ 282.046175] CPU: 3 PID: 784 Comm: irq/185-iwlwifi Not tainted 6.5.0-1016-oem #17-Ubuntu
[ 282.046181] RIP: 0010:iwl_pcie_rx_handle+0x3ce/0x640 [iwlwifi]
[ 282.046247] Call Trace:
[ 282.046250] <IRQ>
[ 282.046254] ? show_regs+0x6d/0x80
[ 282.046264] ? __warn+0x89/0x160
[ 282.046269] ? iwl_pcie_rx_handle+0x3ce/0x640 [iwlwifi]
[ 282.046308] ? report_bug+0x17e/0x1b0
[ 282.046315] ? handle_bug+0x46/0x90
[ 282.046319] ? exc_invalid_op+0x18/0x80
[ 282.046323] ? asm_exc_invalid_op+0x1b/0x20
[ 282.046331] ? iwl_pcie_rx_handle+0x3ce/0x640 [iwlwifi]
[ 282.046366] ? iwl_pcie_rx_handle+0x3ce/0x640 [iwlwifi]
[ 282.046400] ? enqueue_task+0x10/0x1a0
[ 282.046405] iwl_pcie_napi_poll_msix+0x32/0x100 [iwlwifi]
[ 282.046440] __napi_poll+0x30/0x1f0
[ 282.046445] net_rx_action+0x181/0x2e0
[ 282.046449] ? __irq_wake_thread+0x42/0x50
[ 282.046455] __do_softirq+0xd9/0x349
[ 282.046461] ? __pfx_irq_thread_fn+0x10/0x10
[ 282.046465] do_softirq.part.0+0x41/0x80
[ 282.046471] </IRQ>
[ 282.046472] <TASK>
[ 282.046473] __local_bh_enable_ip+0x72/0x80
[ 282.046479] iwl_pcie_irq_rx_msix_handler+0xd7/0x1a0 [iwlwifi]
[ 282.046515] irq_thread_fn+0x21/0x70
[ 282.046519] irq_thread+0xf8/0x1c0
[ 282.046549] ? __pfx_irq_thread_dtor+0x10/0x10
[ 282.046554] ? __pfx_irq_thread+0x10/0x10
[ 282.046558] kthread+0xef/0x120
[ 282.046564] ? __pfx_kthread+0x10/0x10
[ 282.046570] ret_from_fork+0x44/0x70
[ 282.046575] ? __pfx_kthread+0x10/0x10
[ 282.046580] ret_from_fork_asm+0x1b/0x30
[ 282.046586] </TASK>
[ 282.046587] ---[ end trace 0000000000000000 ]---
[ 282.046976] iwlwifi 0000:09:00.0: Microcode SW error detected. Restarting 0x0.
[Fix]
>From stable updates:
commit c1c1039135c3 ("wifi: iwlwifi: increase number of RX buffers for EHT devices")
increase number of RX buffers for new wifi card BE200, it needs one more
commit to support the bigger queue's RB status / write pointer.
[Test]
Tested on hardware, Intel BE200 works fine after stress with iperf3 for 20 mins.
[Where problems could occur]
It may break Intel wifi driver.
The commit c1c1039135c3 is in 6.7 kernel and backported to 6.5 kernel.
SRU for 6.5 mantic and oem-6.5.
Johannes Berg (1):
wifi: iwlwifi: pcie: fix RB status reading
drivers/net/wireless/intel/iwlwifi/pcie/internal.h | 8 ++++----
drivers/net/wireless/intel/iwlwifi/pcie/rx.c | 2 +-
drivers/net/wireless/intel/iwlwifi/pcie/trans.c | 12 ++++--------
3 files changed, 9 insertions(+), 13 deletions(-)
--
2.34.1
More information about the kernel-team
mailing list