Description
In the Linux kernel, the following vulnerability has been resolved: usb: gadget: f_hid: don't call cdev_init while cdev in use When calling unbind, then bind again, cdev_init reinitialized the cdev, even though there may still be references to it. That's the case when the /dev/hidg* device is still opened. This obviously unsafe behavior like oopes. This fixes this by using cdev_alloc to put the cdev on the heap. That way, we can simply allocate a new one in hidg_bind.
Product status
cb382536052fcc7713988869b54a81137069e5a9 (git) before c6c0d13db5d0f8d465eabc14bd23d2b6a7247a43
cb382536052fcc7713988869b54a81137069e5a9 (git) before eb6ef6185f2054a341ec70d7e2165f5381744215
cb382536052fcc7713988869b54a81137069e5a9 (git) before 5a229016ca3ac551294ec59770be9da94ec4bf63
cb382536052fcc7713988869b54a81137069e5a9 (git) before 75ecc46828ec377dd5692c677168ef6d64fd7123
cb382536052fcc7713988869b54a81137069e5a9 (git) before 81ebd43cc0d6d106ce7b6ccbf7b5e40ca7f5503d
3.19
Any version before 3.19
6.12.83 (semver)
6.18.24 (semver)
6.19.14 (semver)
7.0.1 (semver)
7.1-rc1 (original_commit_for_fix)
References
git.kernel.org/...c/c6c0d13db5d0f8d465eabc14bd23d2b6a7247a43
git.kernel.org/...c/eb6ef6185f2054a341ec70d7e2165f5381744215
git.kernel.org/...c/5a229016ca3ac551294ec59770be9da94ec4bf63
git.kernel.org/...c/75ecc46828ec377dd5692c677168ef6d64fd7123
git.kernel.org/...c/81ebd43cc0d6d106ce7b6ccbf7b5e40ca7f5503d