CVE-2024-58042

In the Linux kernel, the following vulnerability has been resolved: rhashtable: Fix potential deadlock by moving schedule_work outside lock Move the hash table growth check and work scheduling outside the rht lock to prevent a possible circular locking dependency. The original implementation could trigger a lockdep warning due to a potential deadlock scenario involving nested locks between rhashtable bucket, rq lock, and dsq lock. By relocating the growth check and work scheduling after releasing the rth lock, we break this potential deadlock chain. This change expands the flexibility of rhashtable by removing restrictive locking that previously limited its use in scheduler and workqueue contexts. Import to say that this calls rht_grow_above_75(), which reads from struct rhashtable without holding the lock, if this is a problem, we can move the check to the lock, and schedule the workqueue after the lock. Modified so that atomic_inc is also moved outside of the bucket lock along with the growth above 75% check.
Configurations

Configuration 1 (hide)

OR cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*

History

01 Oct 2025, 20:18

Type Values Removed Values Added
Summary
  • (es) En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: rhashtable: corrige un posible punto muerto moviendo schedule_work fuera del bloqueo Mueva la comprobación del crecimiento de la tabla hash y la programación del trabajo fuera del bloqueo rht para evitar una posible dependencia de bloqueo circular. La implementación original podría activar una advertencia de lockdep debido a un posible escenario de punto muerto que involucra bloqueos anidados entre el depósito rhashtable, el bloqueo rq y el bloqueo dsq. Al reubicar la comprobación del crecimiento y la programación del trabajo después de liberar el bloqueo rth, rompemos esta posible cadena de punto muerto. Este cambio expande la flexibilidad de rhashtable al eliminar el bloqueo restrictivo que anteriormente limitaba su uso en contextos de planificador y cola de trabajo. Importe para decir que esto llama a rht_grow_above_75(), que lee desde struct rhashtable sin mantener el bloqueo, si esto es un problema, podemos mover la comprobación al bloqueo y programar la cola de trabajo después del bloqueo. Modificado para que atomic_inc también se mueva fuera del bloqueo del depósito junto con la verificación de crecimiento por encima del 75%.
CPE cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 5.5
CWE CWE-667
First Time Linux linux Kernel
Linux
References () https://git.kernel.org/stable/c/ced8ce3c83a7150c5f5d371a8c332d7bc7f9b66d - () https://git.kernel.org/stable/c/ced8ce3c83a7150c5f5d371a8c332d7bc7f9b66d - Patch
References () https://git.kernel.org/stable/c/e1d3422c95f003eba241c176adfe593c33e8a8f6 - () https://git.kernel.org/stable/c/e1d3422c95f003eba241c176adfe593c33e8a8f6 - Patch
References () https://git.kernel.org/stable/c/eb2e58484b838fb4e777ee9721bb9e20e6ca971d - () https://git.kernel.org/stable/c/eb2e58484b838fb4e777ee9721bb9e20e6ca971d - Patch

27 Feb 2025, 20:16

Type Values Removed Values Added
New CVE

Information

Published : 2025-02-27 20:16

Updated : 2025-10-01 20:18


NVD link : CVE-2024-58042

Mitre link : CVE-2024-58042

CVE.ORG link : CVE-2024-58042


JSON object : View

Products Affected

linux

  • linux_kernel
CWE
CWE-667

Improper Locking