Description
In the Linux kernel, the following vulnerability has been resolved: net: mana: fix use-after-free in add_adev() error path If auxiliary_device_add() fails, add_adev() jumps to add_fail and calls auxiliary_device_uninit(adev). The auxiliary device has its release callback set to adev_release(), which frees the containing struct mana_adev. Since adev is embedded in struct mana_adev, the subsequent fall-through to init_fail and access to adev->id may result in a use-after-free. Fix this by saving the allocated auxiliary device id in a local variable before calling auxiliary_device_add(), and use that saved id in the cleanup path after auxiliary_device_uninit().
Product status
a69839d4327d053b18d8e1b0e7ddeee78db78f4f (git) before d88541ffd56d62a61e77209080001eddd4d69815
a69839d4327d053b18d8e1b0e7ddeee78db78f4f (git) before 43f5b19fd190fea20d052bc84741b28031d5baa9
a69839d4327d053b18d8e1b0e7ddeee78db78f4f (git) before 5f4061f8225d18695e5afe9bbf1cb7bd673d7872
a69839d4327d053b18d8e1b0e7ddeee78db78f4f (git) before e5a75bf026c686b91a7dc6f9c5caf5016745d1fe
a69839d4327d053b18d8e1b0e7ddeee78db78f4f (git) before c4ea7d8907cf72b259bf70bd8c2e791e1c4ff70f
6.2
Any version before 6.2
6.6.134 (semver)
6.12.81 (semver)
6.18.22 (semver)
6.19.12 (semver)
7.0 (original_commit_for_fix)
References
git.kernel.org/...c/d88541ffd56d62a61e77209080001eddd4d69815
git.kernel.org/...c/43f5b19fd190fea20d052bc84741b28031d5baa9
git.kernel.org/...c/5f4061f8225d18695e5afe9bbf1cb7bd673d7872
git.kernel.org/...c/e5a75bf026c686b91a7dc6f9c5caf5016745d1fe
git.kernel.org/...c/c4ea7d8907cf72b259bf70bd8c2e791e1c4ff70f