[SRU][Resolute][PATCH v2 0/2] iwlwifi failed to handle oversized command 0xC05
You-Sheng Yang
vicamo.yang at canonical.com
Tue Jun 23 05:04:21 UTC 2026
BugLink: https://bugs.launchpad.net/bugs/2152688
[Impact]
With Intel AX211 wireless module installed on Intel Wildcat Lake
platform, kernel warning with following errors are found at loading
iwlwifi driver:
```
kernel: iwlwifi 0000:00:14.3: Error sending UNKNOWN: enqueue_hcmd failed: -22
kernel: iwlwifi 0000:00:14.3: failed to send MCC_ALLOWED_AP_TYPE_CMD (-22)
```
This are found in mainline kernels 7.0+ as they are the kernel versions
for WCL support, as well as backport-iwlwifi core102, 103, 104 and 105.
backport-iwlwifi master branch HEAD has been partially patched, but
incomplete.
[Fix]
For backport-iwlwifi-dkms, in the master branch HEAD it has commit
5a3d01a7ea635 ("[BUGFIX] wifi: iwlwifi: mvm: avoid oversized UATS command
copy"), which is incomplete that Intel gives an additional patch titled
"wifi: iwlwifi: mvm: don't map the stack to DMA". These two patches
combined equal to
https://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-next.git/commit/?h=fixes&id=e0c121d545134af886b28c4c26d91abf5dd39c17
("wifi: iwlwifi: mvm: avoid oversized UATS command copy"). However the
later breaks builds against kernel < 7.0 and therefore it takes
additional backport related to kmalloc_obj family from commit
4862faa9c3dd ("Merge remote-tracking branch 'auto/master'"). Later, it's
found to cause another PHC register failure warning on kernels >= 7.0,
and it takes backports related to settime64 from another commit
5076fafb8e33 ("Merge remote-tracking branch 'auto/master'").
For the linux kernel in-tree iwlwifi driver, Intel proposed a fix
https://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-next.git/commit/?h=fixes&id=e0c121d545134af886b28c4c26d91abf5dd39c17
("wifi: iwlwifi: mvm: avoid oversized UATS command copy") that is already
in mainline kernel. While v7.0 has already commit 81d90d93d22ca ("wifi:
iwlwifi: Implement settime64 as stub for MVM/MLD PTP") that fixes the PHC
register problem, no additional fix is needed.
[Test Plan]
There are 4 cases:
* linux-unstable-7.1/stonking
* linux-generic-7.0/resolute
* linux-oem-7.0/resolute
* backport-iwlwifi-dkms/stoking
- tested against linux-unstable-7.1/stonking
* backport-iwlwifi-dkms/resolute
- tested against linux-generic-7.0/resolute, linux-oem-7.0/resolute and
linux-oem-6.17/noble
To test kernel packages:
1. Install kernels from corresponding -proposed pocket.
2. Boot from some Intel Wildcat Lake platforms with an Intel AX211
wireless module installed. Here I use Intel WCL-U RVP.
3. The dmesg should gives no error but probe iwlwifi kernel module
successfully.
To test backport-iwlwifi-dkms packages:
1. Boot the testing kernel from some Intel Wildcat Lake platforms with an
Intel AX211 wireless module installed. Here I use Intel WCL-U RVP.
2. Install kernels from corresponding -proposed pocket.
3. The corresponding kernel modules should be built automatically by dpkg
triggers. Use `dkms status` to list built kernel versions.
4. Reboot into the same kernel. The dmesg should gives no error but probe
iwlwifi kernel module successfully.
[Where problems could occur]
This changes the way that command object is handled using
IWL_HCMD_DFL_NOCOPY to avoid buffer size checking. It doesn't really
change runtime behavior or anything else.
[Other Info]
The patches for backport-iwlwifi-dkms are meant to be superseded by the
ones in the master branch, so I did not cherry-pick the one from
linux-next instead.
Nominate backport-iwlwifi-dkms Resolute and Stonking, because they are
the versions with WCL support.
Nominate linux/{Q,R}, linux-oem-7.0, linux-oem-6.17, because they are
either 7.0 kernels or uses backport-iwlwifi-dkms/R.
V2:
- missed the iwl_mcc_allowed_ap_type_cmd v2 for Resolute
- Stonking has this after rebased to mainline HEAD
Emmanuel Grumbach (2):
wifi: iwlwifi: mld: add support for iwl_mcc_allowed_ap_type_cmd v2
wifi: iwlwifi: mvm: avoid oversized UATS command copy
.../wireless/intel/iwlwifi/fw/api/nvm-reg.h | 14 ++++++-
.../net/wireless/intel/iwlwifi/fw/runtime.h | 8 ++--
drivers/net/wireless/intel/iwlwifi/fw/uefi.c | 36 ++++++++++++++--
drivers/net/wireless/intel/iwlwifi/fw/uefi.h | 11 +++++
drivers/net/wireless/intel/iwlwifi/mld/fw.c | 2 +-
.../wireless/intel/iwlwifi/mld/regulatory.c | 32 +++++++++++---
.../wireless/intel/iwlwifi/mld/regulatory.h | 2 +-
drivers/net/wireless/intel/iwlwifi/mvm/fw.c | 42 +++++++++++++------
8 files changed, 119 insertions(+), 28 deletions(-)
--
2.53.0
More information about the kernel-team
mailing list