Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: wifi: mwifiex: fix IRQ leak using wrong index in MSI-X error path mwifiex_pcie_request_irq() registers each MSI-X vector with a per-index dev_id (&card->msix_ctx[i]). On a request_irq() failure the cleanup loop "for (j = 0; j < i; j++)" frees msix_entries[j].vector but passes the failed index's &card->msix_ctx[i] as the dev_id. free_irq() matches on (irq, dev_id), so it fails to find the action registered with &card->msix_ctx[j]: the already-requested IRQ j is not freed (leaked) and free_irq() warns about freeing a non-existent IRQ. Use &card->msix_ctx[j].
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 99074fc1e67b374b5c72406a23ac01fed806d634 before 11bc2cbb14f450eaa47cce9eb086f948ef8f4bcd; affected 99074fc1e67b374b5c72406a23ac01fed806d634 before 1a60cb2292194cc9eafae7ca8a8a72d37ae78d97; affected 99074fc1e67b374b5c72406a23ac01fed806d634 before fcac5813f324cd07dfd36b4adf624fc70f7587d6; affected 99074fc1e67b374b5c72406a23ac01fed806d634 before 2761b21cb896b1da8dd46cee5084c9032b2d7098; affected 99074fc1e67b374b5c72406a23ac01fed806d634 before 5fd4cc87e6cc0839aac89c24ebe39ce262fe088f; affected 99074fc1e67b374b5c72406a23ac01fed806d634 before 0969c9688389f2e0f65b1a924b0dd6625a3bb776; affected 99074fc1e67b374b5c72406a23ac01fed806d634 before 03d5e4776e8b71c2468c5c3c48b39202c87a8796; affected 99074fc1e67b374b5c72406a23ac01fed806d634 before a3d722190cdef18da4878b5efc27c3c386dda248 |
| Linux / Linux | affected 4.6; unaffected 0 before 4.6; unaffected 5.10.271 through 5.10.*; unaffected 5.15.222 through 5.15.*; unaffected 6.1.189 through 6.1.*; unaffected 6.6.158 through 6.6.*; unaffected 6.12.112 through 6.12.*; unaffected 6.18.54 through 6.18.*; unaffected 7.2.8 through 7.2.*; unaffected 7.3 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/11bc2cbb14f450eaa47cce9eb086f948ef8f4bcd
- https://git.kernel.org/stable/c/1a60cb2292194cc9eafae7ca8a8a72d37ae78d97
- https://git.kernel.org/stable/c/fcac5813f324cd07dfd36b4adf624fc70f7587d6
- https://git.kernel.org/stable/c/2761b21cb896b1da8dd46cee5084c9032b2d7098
- https://git.kernel.org/stable/c/5fd4cc87e6cc0839aac89c24ebe39ce262fe088f
- https://git.kernel.org/stable/c/0969c9688389f2e0f65b1a924b0dd6625a3bb776
- https://git.kernel.org/stable/c/03d5e4776e8b71c2468c5c3c48b39202c87a8796
- https://git.kernel.org/stable/c/a3d722190cdef18da4878b5efc27c3c386dda248