Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: debugobjects: Don't wake up kswapd from fill_pool() syzbot is reporting a lockdep warning in fill_pool() because the allocation from debugobjects is using GFP_ATOMIC, which is (__GFP_HIGH | __GFP_KSWAPD_RECLAIM) and therefore tries to wake up kswapd, which acquires kswapd_wait::lock. Since fill_pool() might be called with arbitrary locks held, fill_pool() should not assume that acquiring kswapd_wait::lock is safe. Use __GFP_HIGH instead and remove __GFP_NORETRY as it is pointless for !__GFP_DIRECT_RECLAIM allocation.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 3ac7fe5a4aab409bd5674d0b070bce97f9d20872 before be646802b3dc408c4dc72a3ac32c3f4a0282414d; affected 3ac7fe5a4aab409bd5674d0b070bce97f9d20872 before fd673079749bac97bb30f1461df079e6c8e86511; affected 3ac7fe5a4aab409bd5674d0b070bce97f9d20872 before aee97eec77029270866c704f66cdf2881cbd2fe1; affected 3ac7fe5a4aab409bd5674d0b070bce97f9d20872 before d7fff52c99d52f180d8bef95d8ed8fec6343889c; affected 3ac7fe5a4aab409bd5674d0b070bce97f9d20872 before 4c088d30a72d9b8f9c6ae9362222942e4075cb00; affected 3ac7fe5a4aab409bd5674d0b070bce97f9d20872 before eb799279fb1f9c63c520fe8c1c41cb9154252db6 |
| Linux / Linux | affected 2.6.26; unaffected 0 before 2.6.26; unaffected 5.4.244 through 5.4.*; unaffected 5.10.181 through 5.10.*; unaffected 5.15.114 through 5.15.*; unaffected 6.1.31 through 6.1.*; unaffected 6.3.5 through 6.3.*; unaffected 6.4 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/be646802b3dc408c4dc72a3ac32c3f4a0282414d
- https://git.kernel.org/stable/c/fd673079749bac97bb30f1461df079e6c8e86511
- https://git.kernel.org/stable/c/aee97eec77029270866c704f66cdf2881cbd2fe1
- https://git.kernel.org/stable/c/d7fff52c99d52f180d8bef95d8ed8fec6343889c
- https://git.kernel.org/stable/c/4c088d30a72d9b8f9c6ae9362222942e4075cb00
- https://git.kernel.org/stable/c/eb799279fb1f9c63c520fe8c1c41cb9154252db6