Description
In the Linux kernel, the following vulnerability has been resolved: net: usb: Remove disruptive netif_wake_queue in rtl8150_set_multicast syzbot reported WARNING in rtl8150_start_xmit/usb_submit_urb. This is the sequence of events that leads to the warning: rtl8150_start_xmit() { netif_stop_queue(); usb_submit_urb(dev->tx_urb); } rtl8150_set_multicast() { netif_stop_queue(); netif_wake_queue(); <-- wakes up TX queue before URB is done } rtl8150_start_xmit() { netif_stop_queue(); usb_submit_urb(dev->tx_urb); <-- double submission } rtl8150_set_multicast being the ndo_set_rx_mode callback should not be calling netif_stop_queue and notif_start_queue as these handle TX queue synchronization. The net core function dev_set_rx_mode handles the synchronization for rtl8150_set_multicast making it safe to remove these locks.
Product status
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before cce3c0e21cdd15bcba5c35d3af1700186de8f187
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before 1a08a37ac03d07a1608a1592791041cac979fbc3
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before 54f8ef1a970a8376e5846ed90854decf7c00555d
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before 114e05344763a102a8844efd96ec06ba99293ccd
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before 6394bade9daab8e318c165fe43bba012bf13cd8e
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before 6053e47bbf212b93c051beb4261d7d5a409d0ce3
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before 9d72df7f5eac946f853bf49c428c4e87a17d91da
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before 958baf5eaee394e5fd976979b0791a875f14a179
2.6.12
Any version before 2.6.12
5.4.301 (semver)
5.10.246 (semver)
5.15.195 (semver)
6.1.156 (semver)
6.6.112 (semver)
6.12.53 (semver)
6.17.3 (semver)
6.18 (original_commit_for_fix)
References
git.kernel.org/...c/cce3c0e21cdd15bcba5c35d3af1700186de8f187
git.kernel.org/...c/1a08a37ac03d07a1608a1592791041cac979fbc3
git.kernel.org/...c/54f8ef1a970a8376e5846ed90854decf7c00555d
git.kernel.org/...c/114e05344763a102a8844efd96ec06ba99293ccd
git.kernel.org/...c/6394bade9daab8e318c165fe43bba012bf13cd8e
git.kernel.org/...c/6053e47bbf212b93c051beb4261d7d5a409d0ce3
git.kernel.org/...c/9d72df7f5eac946f853bf49c428c4e87a17d91da
git.kernel.org/...c/958baf5eaee394e5fd976979b0791a875f14a179