In the Linux kernel, the following vulnerability has been resolved: batman-adv: bla: only purge non-released claims When batadv_bla_purge_claims() goes through the list of claims, it is only traversing the hash list with an rcu_read_lock(). Due to a potential parallel batadv_claim_put(), it can happen that it encounters a claim which was actually in the process of being released+freed by batadv_claim_release(). In this case, backbone_gw is set to NULL before the delayed RCU kfree is started. Calling batadv_bla_claim_get_backbone_gw() is then no longer allowed because it would cause a NULL-ptr derefence. To avoid this, only claims with a valid reference counter must be purged. All others are already taken care of.
https://git.kernel.org/stable/c/cf6b604011591865ae39ac82de8978c1120d17af
https://git.kernel.org/stable/c/b65365d2b1e6095c538d49baeb140dd1c166c1b3
https://git.kernel.org/stable/c/afb5436f6028fd68f408f189230fbaa19c910d72
https://git.kernel.org/stable/c/ab3dbd07a809a8eb30c7ddfab9ac886ed30dce8d
https://git.kernel.org/stable/c/a9f58d5e3261f3deeae69ec1e237f38ef3ff5cbe
https://git.kernel.org/stable/c/7b8fbcee3184d848b5aee085ca16d0cf05c9b641
https://git.kernel.org/stable/c/7b7ebb7222a5524ce58e48cc9c6d688320ea6cfe
https://git.kernel.org/stable/c/6725c523a35eeca611ff37e7d4a8712fae92aefd