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.
Product status
960ec92774e152b677ccd0006abcab7b9dd814c2 (git) before 0b217a40156f497e09dd20d3f7baec40c785f386
e83b49ecb569c9c5fa7cc30e55cf2c15f71f9f39 (git) before cc1b179f778f98270bdbbb48d183b4b6427ae198
c5e12ac3beb0dd3a718296b2d8af5528e9ab728e (git) before 7ac58d8832802ec89baa7539e13e6d58a88cce04
c5e12ac3beb0dd3a718296b2d8af5528e9ab728e (git) before 51c32ae7fae14552d79f7139614b77c1bbd57a48
c5e12ac3beb0dd3a718296b2d8af5528e9ab728e (git) before 63da961381e0d979459dede713001f8452364477
c5e12ac3beb0dd3a718296b2d8af5528e9ab728e (git) before 026f6513c5880c2c89e38ad66bbec2868f978605
609cd73bf38bbd48f1e695e01802114b01aa8811 (git)
6.1.107 (semver) before 6.1.165
6.6.48 (semver) before 6.6.128
6.10.7 (semver) before 6.11
6.11
Any version before 6.11
6.1.165 (semver)
6.6.128 (semver)
6.12.75 (semver)
6.18.14 (semver)
6.19.4 (semver)
7.0 (original_commit_for_fix)
References
git.kernel.org/...c/0b217a40156f497e09dd20d3f7baec40c785f386
git.kernel.org/...c/cc1b179f778f98270bdbbb48d183b4b6427ae198
git.kernel.org/...c/7ac58d8832802ec89baa7539e13e6d58a88cce04
git.kernel.org/...c/51c32ae7fae14552d79f7139614b77c1bbd57a48
git.kernel.org/...c/63da961381e0d979459dede713001f8452364477
git.kernel.org/...c/026f6513c5880c2c89e38ad66bbec2868f978605