CVE-2025-68261
Gravedad:
Pendiente de análisis
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
16/12/2025
Última modificación:
16/12/2025
Descripción
*** Pendiente de traducción *** In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
ext4: add i_data_sem protection in ext4_destroy_inline_data_nolock()<br />
<br />
Fix a race between inline data destruction and block mapping.<br />
<br />
The function ext4_destroy_inline_data_nolock() changes the inode data<br />
layout by clearing EXT4_INODE_INLINE_DATA and setting EXT4_INODE_EXTENTS.<br />
At the same time, another thread may execute ext4_map_blocks(), which<br />
tests EXT4_INODE_EXTENTS to decide whether to call ext4_ext_map_blocks()<br />
or ext4_ind_map_blocks().<br />
<br />
Without i_data_sem protection, ext4_ind_map_blocks() may receive inode<br />
with EXT4_INODE_EXTENTS flag and triggering assert.<br />
<br />
kernel BUG at fs/ext4/indirect.c:546!<br />
EXT4-fs (loop2): unmounting filesystem.<br />
invalid opcode: 0000 [#1] PREEMPT SMP KASAN NOPTI<br />
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.12.0-1 04/01/2014<br />
RIP: 0010:ext4_ind_map_blocks.cold+0x2b/0x5a fs/ext4/indirect.c:546<br />
<br />
Call Trace:<br />
<br />
ext4_map_blocks+0xb9b/0x16f0 fs/ext4/inode.c:681<br />
_ext4_get_block+0x242/0x590 fs/ext4/inode.c:822<br />
ext4_block_write_begin+0x48b/0x12c0 fs/ext4/inode.c:1124<br />
ext4_write_begin+0x598/0xef0 fs/ext4/inode.c:1255<br />
ext4_da_write_begin+0x21e/0x9c0 fs/ext4/inode.c:3000<br />
generic_perform_write+0x259/0x5d0 mm/filemap.c:3846<br />
ext4_buffered_write_iter+0x15b/0x470 fs/ext4/file.c:285<br />
ext4_file_write_iter+0x8e0/0x17f0 fs/ext4/file.c:679<br />
call_write_iter include/linux/fs.h:2271 [inline]<br />
do_iter_readv_writev+0x212/0x3c0 fs/read_write.c:735<br />
do_iter_write+0x186/0x710 fs/read_write.c:861<br />
vfs_iter_write+0x70/0xa0 fs/read_write.c:902<br />
iter_file_splice_write+0x73b/0xc90 fs/splice.c:685<br />
do_splice_from fs/splice.c:763 [inline]<br />
direct_splice_actor+0x10f/0x170 fs/splice.c:950<br />
splice_direct_to_actor+0x33a/0xa10 fs/splice.c:896<br />
do_splice_direct+0x1a9/0x280 fs/splice.c:1002<br />
do_sendfile+0xb13/0x12c0 fs/read_write.c:1255<br />
__do_sys_sendfile64 fs/read_write.c:1323 [inline]<br />
__se_sys_sendfile64 fs/read_write.c:1309 [inline]<br />
__x64_sys_sendfile64+0x1cf/0x210 fs/read_write.c:1309<br />
do_syscall_x64 arch/x86/entry/common.c:51 [inline]<br />
do_syscall_64+0x35/0x80 arch/x86/entry/common.c:81<br />
entry_SYSCALL_64_after_hwframe+0x6e/0xd8



