Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: rxrpc: Fix call removal to use RCU safe deletion Fix rxrpc call removal from the rxnet->calls list to use list_del_rcu() rather than list_del_init() to prevent stuffing up reading /proc/net/rxrpc/calls from potentially getting into an infinite loop. This, however, means that list_empty() no longer works on an entry that's been deleted from the list, making it harder to detect prior deletion. Fix this by: Firstly, make rxrpc_destroy_all_calls() only dump the first ten calls that are unexpectedly still on the list. Limiting the number of steps means there's no need to call cond_resched() or to remove calls from the list here, thereby eliminating the need for rxrpc_put_call() to check for that. rxrpc_put_call() can then be fixed to unconditionally delete the call from the list as it is the only place that the deletion occurs.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 2baec2c3f854d1f79c7bb28386484e144e864a14 before 3e47a38e584b905359fe0ce5be5165d1e8592a90; affected 2baec2c3f854d1f79c7bb28386484e144e864a14 before b15b1ce96777b88989a6a4de8d01efbcd81ad2d7; affected 2baec2c3f854d1f79c7bb28386484e144e864a14 before 280efb85e9759881a9d31d0874baa04583cb6c09; affected 2baec2c3f854d1f79c7bb28386484e144e864a14 before 93fc15be44a35b8e3c58d0238ac0d9b7c53465ff; affected 2baec2c3f854d1f79c7bb28386484e144e864a14 before c63abf25203b50243fe228090526f9dbf37727bd; affected 2baec2c3f854d1f79c7bb28386484e144e864a14 before 3be718f659683ad89fad6f1eb66bee99727cae64; affected 2baec2c3f854d1f79c7bb28386484e144e864a14 before ac5f54691be06a32246179d41be2d73598036deb; affected 2baec2c3f854d1f79c7bb28386484e144e864a14 before 146d4ab94cf129ee06cd467cb5c71368a6b5bad6 |
| Linux / Linux | affected 4.13; unaffected 0 before 4.13; unaffected 5.10.258 through 5.10.*; unaffected 5.15.209 through 5.15.*; unaffected 6.1.175 through 6.1.*; unaffected 6.6.135 through 6.6.*; unaffected 6.12.82 through 6.12.*; unaffected 6.18.23 through 6.18.*; unaffected 6.19.13 through 6.19.*; unaffected 7.0 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/3e47a38e584b905359fe0ce5be5165d1e8592a90
- https://git.kernel.org/stable/c/b15b1ce96777b88989a6a4de8d01efbcd81ad2d7
- https://git.kernel.org/stable/c/280efb85e9759881a9d31d0874baa04583cb6c09
- https://git.kernel.org/stable/c/93fc15be44a35b8e3c58d0238ac0d9b7c53465ff
- https://git.kernel.org/stable/c/c63abf25203b50243fe228090526f9dbf37727bd
- https://git.kernel.org/stable/c/3be718f659683ad89fad6f1eb66bee99727cae64
- https://git.kernel.org/stable/c/ac5f54691be06a32246179d41be2d73598036deb
- https://git.kernel.org/stable/c/146d4ab94cf129ee06cd467cb5c71368a6b5bad6
ADP enrichment
No English description supplied.