CVE-2024-37078

In the Linux kernel, the following vulnerability has been resolved: nilfs2: fix potential kernel bug due to lack of writeback flag waiting Destructive writes to a block device on which nilfs2 is mounted can cause a kernel bug in the folio/page writeback start routine or writeback end routine (__folio_start_writeback in the log below): kernel BUG at mm/page-writeback.c:3070! Oops: invalid opcode: 0000 [#1] PREEMPT SMP KASAN PTI ... RIP: 0010:__folio_start_writeback+0xbaa/0x10e0 Code: 25 ff 0f 00 00 0f 84 18 01 00 00 e8 40 ca c6 ff e9 17 f6 ff ff e8 36 ca c6 ff 4c 89 f7 48 c7 c6 80 c0 12 84 e8 e7 b3 0f 00 90 <0f> 0b e8 1f ca c6 ff 4c 89 f7 48 c7 c6 a0 c6 12 84 e8 d0 b3 0f 00 ... Call Trace: <TASK> nilfs_segctor_do_construct+0x4654/0x69d0 [nilfs2] nilfs_segctor_construct+0x181/0x6b0 [nilfs2] nilfs_segctor_thread+0x548/0x11c0 [nilfs2] kthread+0x2f0/0x390 ret_from_fork+0x4b/0x80 ret_from_fork_asm+0x1a/0x30 </TASK> This is because when the log writer starts a writeback for segment summary blocks or a super root block that use the backing device's page cache, it does not wait for the ongoing folio/page writeback, resulting in an inconsistent writeback state. Fix this issue by waiting for ongoing writebacks when putting folios/pages on the backing device into writeback state.
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:6.10:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.10:rc2:*:*:*:*:*:*

History

03 Nov 2025, 22:17

Type Values Removed Values Added
References
  • () https://lists.debian.org/debian-lts-announce/2025/01/msg00001.html -

17 Sep 2025, 17:03

Type Values Removed Values Added
CPE cpe:2.3:o:linux:linux_kernel:6.10:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.10:rc1:*:*:*:*:*:*
References () https://git.kernel.org/stable/c/0ecfe3a92869a59668d27228dabbd7965e83567f - () https://git.kernel.org/stable/c/0ecfe3a92869a59668d27228dabbd7965e83567f - Patch
References () https://git.kernel.org/stable/c/1f3bff69f1214fe03a02bc650d5bbfaa6e65ae7d - () https://git.kernel.org/stable/c/1f3bff69f1214fe03a02bc650d5bbfaa6e65ae7d - Patch
References () https://git.kernel.org/stable/c/271dcd977ccda8c7a26e360425ae7b4db7d2ecc0 - () https://git.kernel.org/stable/c/271dcd977ccda8c7a26e360425ae7b4db7d2ecc0 - Patch
References () https://git.kernel.org/stable/c/33900d7eae616647e179eee1c66ebe654ee39627 - () https://git.kernel.org/stable/c/33900d7eae616647e179eee1c66ebe654ee39627 - Patch
References () https://git.kernel.org/stable/c/614d397be0cf43412b3f94a0f6460eddced8ce92 - () https://git.kernel.org/stable/c/614d397be0cf43412b3f94a0f6460eddced8ce92 - Patch
References () https://git.kernel.org/stable/c/95f6f81e50d858a7c9aa7c795ec14a0ac3819118 - () https://git.kernel.org/stable/c/95f6f81e50d858a7c9aa7c795ec14a0ac3819118 - Patch
References () https://git.kernel.org/stable/c/a4ca369ca221bb7e06c725792ac107f0e48e82e7 - () https://git.kernel.org/stable/c/a4ca369ca221bb7e06c725792ac107f0e48e82e7 - Patch
References () https://git.kernel.org/stable/c/a75b8f493dfc48aa38c518430bd9e03b53bffebe - () https://git.kernel.org/stable/c/a75b8f493dfc48aa38c518430bd9e03b53bffebe - Patch
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 7.1
CWE NVD-CWE-noinfo
First Time Linux linux Kernel
Linux

21 Nov 2024, 09:23

Type Values Removed Values Added
References () https://git.kernel.org/stable/c/0ecfe3a92869a59668d27228dabbd7965e83567f - () https://git.kernel.org/stable/c/0ecfe3a92869a59668d27228dabbd7965e83567f -
References () https://git.kernel.org/stable/c/1f3bff69f1214fe03a02bc650d5bbfaa6e65ae7d - () https://git.kernel.org/stable/c/1f3bff69f1214fe03a02bc650d5bbfaa6e65ae7d -
References () https://git.kernel.org/stable/c/271dcd977ccda8c7a26e360425ae7b4db7d2ecc0 - () https://git.kernel.org/stable/c/271dcd977ccda8c7a26e360425ae7b4db7d2ecc0 -
References () https://git.kernel.org/stable/c/33900d7eae616647e179eee1c66ebe654ee39627 - () https://git.kernel.org/stable/c/33900d7eae616647e179eee1c66ebe654ee39627 -
References () https://git.kernel.org/stable/c/614d397be0cf43412b3f94a0f6460eddced8ce92 - () https://git.kernel.org/stable/c/614d397be0cf43412b3f94a0f6460eddced8ce92 -
References () https://git.kernel.org/stable/c/95f6f81e50d858a7c9aa7c795ec14a0ac3819118 - () https://git.kernel.org/stable/c/95f6f81e50d858a7c9aa7c795ec14a0ac3819118 -
References () https://git.kernel.org/stable/c/a4ca369ca221bb7e06c725792ac107f0e48e82e7 - () https://git.kernel.org/stable/c/a4ca369ca221bb7e06c725792ac107f0e48e82e7 -
References () https://git.kernel.org/stable/c/a75b8f493dfc48aa38c518430bd9e03b53bffebe - () https://git.kernel.org/stable/c/a75b8f493dfc48aa38c518430bd9e03b53bffebe -

05 Jul 2024, 08:15

Type Values Removed Values Added
References
  • () https://git.kernel.org/stable/c/0ecfe3a92869a59668d27228dabbd7965e83567f -
  • () https://git.kernel.org/stable/c/33900d7eae616647e179eee1c66ebe654ee39627 -
  • () https://git.kernel.org/stable/c/95f6f81e50d858a7c9aa7c795ec14a0ac3819118 -
  • () https://git.kernel.org/stable/c/a75b8f493dfc48aa38c518430bd9e03b53bffebe -
Summary
  • (es) En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: nilfs2: corrige un posible error en el kernel debido a la falta de indicador de escritura reescrita en espera Las escrituras destructivas en un dispositivo de bloque en el que está montado nilfs2 pueden causar un error en el kernel en la rutina de inicio de reescritura de folio/página o Rutina de fin de reescritura (__folio_start_writeback en el registro a continuación): ¡ERROR del kernel en mm/page-writeback.c:3070! Vaya: código de operación no válido: 0000 [#1] PREEMPT SMP KASAN PTI... RIP: 0010:__folio_start_writeback+0xbaa/0x10e0 Código: 25 ff 0f 00 00 0f 84 18 01 00 00 e8 40 ca c6 ff e9 17 f6 ff ff e8 36 ca c6 ff 4c 89 f7 48 c7 c6 80 c0 12 84 e8 e7 b3 0f 00 90 &lt;0f&gt; 0b e8 1f ca c6 ff 4c 89 f7 48 c7 c6 a0 c6 12 84 e8 d0 b3 0f 00 ... Seguimiento de llamadas: nilfs_segctor_do_construct+0x4654/0x69d0 [nilfs2] nilfs_segctor_construct+0x181/0x6b0 [nilfs2] nilfs_segctor_thread+0x548/0x11c0 [nilfs2] kthread+0x2f0/0x390 ret_from_fork+0x4b/0x 80 ret_from_fork_asm+0x1a/0x30 Esto se debe a que cuando el escritor de registros inicia una reescritura para bloques de resumen de segmentos o un bloque súper raíz que utiliza la caché de página del dispositivo de respaldo, no espera la reescritura en curso de folios/páginas, lo que genera un estado de reescritura inconsistente. Solucione este problema esperando las reescrituras en curso al poner las publicaciones/páginas en el dispositivo de respaldo en estado de reescritura.

25 Jun 2024, 15:15

Type Values Removed Values Added
New CVE

Information

Published : 2024-06-25 15:15

Updated : 2025-11-03 22:17


NVD link : CVE-2024-37078

Mitre link : CVE-2024-37078

CVE.ORG link : CVE-2024-37078


JSON object : View

Products Affected

linux

  • linux_kernel