Description
In the Linux kernel, the following vulnerability has been resolved: wifi: mt76: Fix memory leak after mt76_connac_mcu_alloc_sta_req() mt76_connac_mcu_alloc_sta_req() allocates an skb which is expected to be freed eventually by mt76_mcu_skb_send_msg(). However, currently if an intermediate function fails before sending, the allocated skb is leaked. Specifically, mt76_connac_mcu_sta_wed_update() and mt76_connac_mcu_sta_key_tlv() may fail, leading to an immediate memory leak in the error path. Fix this by explicitly freeing the skb in these error paths. Commit 7c0f63fe37a5 ("wifi: mt76: mt7996: fix memory leak on mt7996_mcu_sta_key_tlv error") made a similar change. Compile tested only. Issue found using a prototype static analysis tool and code review.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
6683d988089ce0e80bd859a9493333b6b272420e to < a2af91af9536922edc3f63de90c3f1fe9db71717affected6683d988089ce0e80bd859a9493333b6b272420e to < 7de35b99503012e57bec027e98ed53f881518b5baffected6683d988089ce0e80bd859a9493333b6b272420e to < 8527ac1bce87aaabde6755e8e6eb2a9f439d1292affected6683d988089ce0e80bd859a9493333b6b272420e to < eb466406d2094deefadc2cd6ddb4f6eeb086d1b4affected6683d988089ce0e80bd859a9493333b6b272420e to < c41075ce8cf05ed8c0e7b7efef000dce548ffc42affected
Linux Linux
Default version status: affected
5.18affected0 to < 5.18unaffected6.6.160 to ≤ 6.6.*unaffected6.12.109 to ≤ 6.12.*unaffected6.18.50 to ≤ 6.18.*unaffected7.0.10 to ≤ 7.0.*unaffected7.1 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/a2af91af9536922edc3f63de90c3f1fe9db71717 ↗
- https://git.kernel.org/stable/c/7de35b99503012e57bec027e98ed53f881518b5b ↗
- https://git.kernel.org/stable/c/8527ac1bce87aaabde6755e8e6eb2a9f439d1292 ↗
- https://git.kernel.org/stable/c/eb466406d2094deefadc2cd6ddb4f6eeb086d1b4 ↗
- https://git.kernel.org/stable/c/c41075ce8cf05ed8c0e7b7efef000dce548ffc42 ↗