Description
In the Linux kernel, the following vulnerability has been resolved: net: mscc: ocelot: add missing lock protection in ocelot_port_xmit_inj() ocelot_port_xmit_inj() calls ocelot_can_inject() and ocelot_port_inject_frame() without holding the injection group lock. Both functions contain lockdep_assert_held() for the injection lock, and the correct caller felix_port_deferred_xmit() properly acquires the lock using ocelot_lock_inj_grp() before calling these functions. Add ocelot_lock_inj_grp()/ocelot_unlock_inj_grp() around the register injection path to fix the missing lock protection. The FDMA path is not affected as it uses its own locking mechanism.
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
960ec92774e152b677ccd0006abcab7b9dd814c2 to < 0b217a40156f497e09dd20d3f7baec40c785f386affectede83b49ecb569c9c5fa7cc30e55cf2c15f71f9f39 to < cc1b179f778f98270bdbbb48d183b4b6427ae198affectedc5e12ac3beb0dd3a718296b2d8af5528e9ab728e to < 7ac58d8832802ec89baa7539e13e6d58a88cce04affectedc5e12ac3beb0dd3a718296b2d8af5528e9ab728e to < 51c32ae7fae14552d79f7139614b77c1bbd57a48affectedc5e12ac3beb0dd3a718296b2d8af5528e9ab728e to < 63da961381e0d979459dede713001f8452364477affectedc5e12ac3beb0dd3a718296b2d8af5528e9ab728e to < 026f6513c5880c2c89e38ad66bbec2868f978605affected609cd73bf38bbd48f1e695e01802114b01aa8811affected6.1.107 to < 6.1.165affected6.6.48 to < 6.6.128affected6.10.7 to < 6.11affected
Linux Linux
Default version status: affected
6.11affected0 to < 6.11unaffected6.1.165 to ≤ 6.1.*unaffected6.6.128 to ≤ 6.6.*unaffected6.12.75 to ≤ 6.12.*unaffected6.18.14 to ≤ 6.18.*unaffected6.19.4 to ≤ 6.19.*unaffected7.0 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/0b217a40156f497e09dd20d3f7baec40c785f386 ↗
- https://git.kernel.org/stable/c/cc1b179f778f98270bdbbb48d183b4b6427ae198 ↗
- https://git.kernel.org/stable/c/7ac58d8832802ec89baa7539e13e6d58a88cce04 ↗
- https://git.kernel.org/stable/c/51c32ae7fae14552d79f7139614b77c1bbd57a48 ↗
- https://git.kernel.org/stable/c/63da961381e0d979459dede713001f8452364477 ↗
- https://git.kernel.org/stable/c/026f6513c5880c2c89e38ad66bbec2868f978605 ↗