CVE-2024-38582

In the Linux kernel, the following vulnerability has been resolved: nilfs2: fix potential hang in nilfs_detach_log_writer() Syzbot has reported a potential hang in nilfs_detach_log_writer() called during nilfs2 unmount. Analysis revealed that this is because nilfs_segctor_sync(), which synchronizes with the log writer thread, can be called after nilfs_segctor_destroy() terminates that thread, as shown in the call trace below: nilfs_detach_log_writer nilfs_segctor_destroy nilfs_segctor_kill_thread --> Shut down log writer thread flush_work nilfs_iput_work_func nilfs_dispose_list iput nilfs_evict_inode nilfs_transaction_commit nilfs_construct_segment (if inode needs sync) nilfs_segctor_sync --> Attempt to synchronize with log writer thread *** DEADLOCK *** Fix this issue by changing nilfs_segctor_sync() so that the log writer thread returns normally without synchronizing after it terminates, and by forcing tasks that are already waiting to complete once after the thread terminates. The skipped inode metadata flushout will then be processed together in the subsequent cleanup work in nilfs_segctor_destroy().
References
Link Resource
https://git.kernel.org/stable/c/06afce714d87c7cd1dcfccbcd800c5c5d2cf1cfd Patch
https://git.kernel.org/stable/c/1c3844c5f4eac043954ebf6403fa9fd1f0e9c1c0 Patch
https://git.kernel.org/stable/c/6e5c8e8e024e147b834f56f2115aad241433679b Patch
https://git.kernel.org/stable/c/911d38be151921a5d152bb55e81fd752384c6830 Patch
https://git.kernel.org/stable/c/a8799662fed1f8747edae87a1937549288baca6a Patch
https://git.kernel.org/stable/c/bc9cee50a4a4ca23bdc49f75ea8242d8a2193b3b Patch
https://git.kernel.org/stable/c/c516db6ab9eabbedbc430b4f93b0d8728e9b427f Patch
https://git.kernel.org/stable/c/eb85dace897c5986bc2f36b3c783c6abb8a4292e Patch
https://git.kernel.org/stable/c/eff7cdf890b02596b8d73e910bdbdd489175dbdb Patch
https://git.kernel.org/stable/c/06afce714d87c7cd1dcfccbcd800c5c5d2cf1cfd Patch
https://git.kernel.org/stable/c/1c3844c5f4eac043954ebf6403fa9fd1f0e9c1c0 Patch
https://git.kernel.org/stable/c/6e5c8e8e024e147b834f56f2115aad241433679b Patch
https://git.kernel.org/stable/c/911d38be151921a5d152bb55e81fd752384c6830 Patch
https://git.kernel.org/stable/c/a8799662fed1f8747edae87a1937549288baca6a Patch
https://git.kernel.org/stable/c/bc9cee50a4a4ca23bdc49f75ea8242d8a2193b3b Patch
https://git.kernel.org/stable/c/c516db6ab9eabbedbc430b4f93b0d8728e9b427f Patch
https://git.kernel.org/stable/c/eb85dace897c5986bc2f36b3c783c6abb8a4292e Patch
https://git.kernel.org/stable/c/eff7cdf890b02596b8d73e910bdbdd489175dbdb Patch
https://lists.debian.org/debian-lts-announce/2024/06/msg00020.html
Configurations

Configuration 1 (hide)

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

History

04 Nov 2025, 18:16

Type Values Removed Values Added
References
  • () https://lists.debian.org/debian-lts-announce/2024/06/msg00020.html -

01 Apr 2025, 18:25

Type Values Removed Values Added
CWE CWE-667
First Time Linux linux Kernel
Linux
CPE cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
References () https://git.kernel.org/stable/c/06afce714d87c7cd1dcfccbcd800c5c5d2cf1cfd - () https://git.kernel.org/stable/c/06afce714d87c7cd1dcfccbcd800c5c5d2cf1cfd - Patch
References () https://git.kernel.org/stable/c/1c3844c5f4eac043954ebf6403fa9fd1f0e9c1c0 - () https://git.kernel.org/stable/c/1c3844c5f4eac043954ebf6403fa9fd1f0e9c1c0 - Patch
References () https://git.kernel.org/stable/c/6e5c8e8e024e147b834f56f2115aad241433679b - () https://git.kernel.org/stable/c/6e5c8e8e024e147b834f56f2115aad241433679b - Patch
References () https://git.kernel.org/stable/c/911d38be151921a5d152bb55e81fd752384c6830 - () https://git.kernel.org/stable/c/911d38be151921a5d152bb55e81fd752384c6830 - Patch
References () https://git.kernel.org/stable/c/a8799662fed1f8747edae87a1937549288baca6a - () https://git.kernel.org/stable/c/a8799662fed1f8747edae87a1937549288baca6a - Patch
References () https://git.kernel.org/stable/c/bc9cee50a4a4ca23bdc49f75ea8242d8a2193b3b - () https://git.kernel.org/stable/c/bc9cee50a4a4ca23bdc49f75ea8242d8a2193b3b - Patch
References () https://git.kernel.org/stable/c/c516db6ab9eabbedbc430b4f93b0d8728e9b427f - () https://git.kernel.org/stable/c/c516db6ab9eabbedbc430b4f93b0d8728e9b427f - Patch
References () https://git.kernel.org/stable/c/eb85dace897c5986bc2f36b3c783c6abb8a4292e - () https://git.kernel.org/stable/c/eb85dace897c5986bc2f36b3c783c6abb8a4292e - Patch
References () https://git.kernel.org/stable/c/eff7cdf890b02596b8d73e910bdbdd489175dbdb - () https://git.kernel.org/stable/c/eff7cdf890b02596b8d73e910bdbdd489175dbdb - Patch

21 Nov 2024, 09:26

Type Values Removed Values Added
References () https://git.kernel.org/stable/c/06afce714d87c7cd1dcfccbcd800c5c5d2cf1cfd - () https://git.kernel.org/stable/c/06afce714d87c7cd1dcfccbcd800c5c5d2cf1cfd -
References () https://git.kernel.org/stable/c/1c3844c5f4eac043954ebf6403fa9fd1f0e9c1c0 - () https://git.kernel.org/stable/c/1c3844c5f4eac043954ebf6403fa9fd1f0e9c1c0 -
References () https://git.kernel.org/stable/c/6e5c8e8e024e147b834f56f2115aad241433679b - () https://git.kernel.org/stable/c/6e5c8e8e024e147b834f56f2115aad241433679b -
References () https://git.kernel.org/stable/c/911d38be151921a5d152bb55e81fd752384c6830 - () https://git.kernel.org/stable/c/911d38be151921a5d152bb55e81fd752384c6830 -
References () https://git.kernel.org/stable/c/a8799662fed1f8747edae87a1937549288baca6a - () https://git.kernel.org/stable/c/a8799662fed1f8747edae87a1937549288baca6a -
References () https://git.kernel.org/stable/c/bc9cee50a4a4ca23bdc49f75ea8242d8a2193b3b - () https://git.kernel.org/stable/c/bc9cee50a4a4ca23bdc49f75ea8242d8a2193b3b -
References () https://git.kernel.org/stable/c/c516db6ab9eabbedbc430b4f93b0d8728e9b427f - () https://git.kernel.org/stable/c/c516db6ab9eabbedbc430b4f93b0d8728e9b427f -
References () https://git.kernel.org/stable/c/eb85dace897c5986bc2f36b3c783c6abb8a4292e - () https://git.kernel.org/stable/c/eb85dace897c5986bc2f36b3c783c6abb8a4292e -
References () https://git.kernel.org/stable/c/eff7cdf890b02596b8d73e910bdbdd489175dbdb - () https://git.kernel.org/stable/c/eff7cdf890b02596b8d73e910bdbdd489175dbdb -

08 Nov 2024, 19:35

Type Values Removed Values Added
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 5.3

15 Jul 2024, 07:15

Type Values Removed Values Added
References
  • {'url': 'https://lists.debian.org/debian-lts-announce/2024/06/msg00020.html', 'source': '416baaa9-dc9f-4396-8d5f-8c081fb06d67'}

27 Jun 2024, 13:16

Type Values Removed Values Added
References
  • () https://lists.debian.org/debian-lts-announce/2024/06/msg00020.html -

20 Jun 2024, 12:44

Type Values Removed Values Added
Summary
  • (es) En el kernel de Linux, se resolvió la siguiente vulnerabilidad: nilfs2: soluciona un posible bloqueo en nilfs_detach_log_writer() Syzbot ha informado de un posible bloqueo en nilfs_detach_log_writer() llamado durante el desmontaje de nilfs2. El análisis reveló que esto se debe a que nilfs_segctor_sync(), que se sincroniza con el hilo del escritor de registros, puede ser llamado después de que nilfs_segctor_destroy() finalice ese hilo, como se muestra en el seguimiento de llamadas a continuación: nilfs_detach_log_writer nilfs_segctor_destroy nilfs_segctor_kill_thread --> Apagar el hilo del escritor de registros Flush_work nilfs_iput_work_func nilfs_dispose_list iput nilfs_evict_inode nilfs_transaction_commit nilfs_construct_segment (si el inodo necesita sincronización) nilfs_segctor_sync --> Intente sincronizar con el hilo del escritor de registros *** DEADLOCK *** Solucione este problema cambiando nilfs_segctor_sync() para que el hilo del escritor de registros regrese normalmente sin sincronizarse después de que termine y forzando las tareas que ya están esperando a completarse una vez que finaliza el hilo. La eliminación de metadatos del inodo omitido se procesará en conjunto en el trabajo de limpieza posterior en nilfs_segctor_destroy().

19 Jun 2024, 14:15

Type Values Removed Values Added
New CVE

Information

Published : 2024-06-19 14:15

Updated : 2025-11-04 18:16


NVD link : CVE-2024-38582

Mitre link : CVE-2024-38582

CVE.ORG link : CVE-2024-38582


JSON object : View

Products Affected

linux

  • linux_kernel
CWE
CWE-667

Improper Locking