Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: netfilter: ipset: fix performance regression in swap operation The patch "netfilter: ipset: fix race condition between swap/destroy and kernel side add/del/test", commit 28628fa9 fixes a race condition. But the synchronize_rcu() added to the swap function unnecessarily slows it down: it can safely be moved to destroy and use call_rcu() instead. Eric Dumazet pointed out that simply calling the destroy functions as rcu callback does not work: sets with timeout use garbage collectors which need cancelling at destroy which can wait. Therefore the destroy functions are split into two: cancelling garbage collectors safely at executing the command received by netlink and moving the remaining part only into the rcu callback.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 427deb5ba5661c4ae1cfb35955d2e01bd5f3090a before c7f2733e5011bfd136f1ca93497394d43aa76225; affected e7152a138a5ac77439ff4e7a7533448a7d4c260d before a24d5f2ac8ef702a58e55ec276aad29b4bd97e05; affected 8bb930c3a1eacec1b14817f565ff81667c7c5dfa before c2dc077d8f722a1c73a24e674f925602ee5ece49; affected 875ee3a09e27b7adb7006ca6d16faf7f33415aa5 before 653bc5e6d9995d7d5f497c665b321875a626161c; affected 23c31036f862582f98386120aee55c9ae23d7899 before b93a6756a01f4fd2f329a39216f9824c56a66397; affected 28628fa952fefc7f2072ce6e8016968cc452b1ba before 970709a67696b100a57b33af1a3d75fc34b747eb; affected 28628fa952fefc7f2072ce6e8016968cc452b1ba before 97f7cf1cd80eeed3b7c808b7c12463295c751001; affected a12606e5ad0cee8f4ba3ec68561c4d6275d2df57; affected 5.4.264 before 5.4.269; affected 5.10.204 before 5.10.210; affected 5.15.143 before 5.15.149; affected 6.1.68 before 6.1.79; affected 6.6.7 before 6.6.18; affected 4.19.302 before 4.20 |
| Linux / Linux | affected 6.7; unaffected 0 before 6.7; unaffected 5.4.269 through 5.4.*; unaffected 5.10.210 through 5.10.*; unaffected 5.15.149 through 5.15.*; unaffected 6.1.79 through 6.1.*; unaffected 6.6.18 through 6.6.*; unaffected 6.7.6 through 6.7.*; unaffected 6.8 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/c7f2733e5011bfd136f1ca93497394d43aa76225
- https://git.kernel.org/stable/c/a24d5f2ac8ef702a58e55ec276aad29b4bd97e05
- https://git.kernel.org/stable/c/c2dc077d8f722a1c73a24e674f925602ee5ece49
- https://git.kernel.org/stable/c/653bc5e6d9995d7d5f497c665b321875a626161c
- https://git.kernel.org/stable/c/b93a6756a01f4fd2f329a39216f9824c56a66397
- https://git.kernel.org/stable/c/970709a67696b100a57b33af1a3d75fc34b747eb
- https://git.kernel.org/stable/c/97f7cf1cd80eeed3b7c808b7c12463295c751001
ADP enrichment
No English description supplied.
No references supplied.
No English description supplied.
- https://git.kernel.org/stable/c/c7f2733e5011bfd136f1ca93497394d43aa76225
- https://git.kernel.org/stable/c/a24d5f2ac8ef702a58e55ec276aad29b4bd97e05
- https://git.kernel.org/stable/c/c2dc077d8f722a1c73a24e674f925602ee5ece49
- https://git.kernel.org/stable/c/653bc5e6d9995d7d5f497c665b321875a626161c
- https://git.kernel.org/stable/c/b93a6756a01f4fd2f329a39216f9824c56a66397
- https://git.kernel.org/stable/c/970709a67696b100a57b33af1a3d75fc34b747eb
- https://git.kernel.org/stable/c/97f7cf1cd80eeed3b7c808b7c12463295c751001
- https://lists.debian.org/debian-lts-announce/2024/06/msg00017.html