Linux 7.4-rc2 acelera FAT32 hasta 162 veces en pruebas con clústeres pequeños y montajes sÃncronos

Linux 7.4-rc2 ha incorporado una optimización del controlador FAT que, en pruebas con QEMU, mostró mejoras de hasta 162 veces en ciertas condiciones. El cambio, firmado por Matheus Alves de Almeida, reorganiza la reserva de clústeres al expandir archivos y evita que la operación se fragmente en numerosas asignaciones pequeñas.
El dato máximo no equivale a una aceleración universal. Los resultados más pronunciados aparecen en FAT32 con clústeres pequeños y montajes sÃncronos, una combinación que delimita el alcance de las pruebas. El parche llegó dentro del lote de correcciones no relacionadas con la gestión de memoria previo a la versión candidata, junto a otros arreglos para FAT, OCFS2 y distintos componentes del kernel.
Qué cambia en el controlador FAT de Linux 7.4-rc2
La modificación se centra en fat_cont_expand(), la función que interviene en la expansión continua de archivos. Antes, esa ruta delegaba la asignación de clústeres nuevos en generic_cont_expand_simple(), un mecanismo que podÃa repartir el trabajo en muchas solicitudes pequeñas y penalizar el rendimiento.
Ahora, el código reserva por adelantado el espacio de los clústeres antes de ampliar el archivo. Para centralizar la lógica se incorpora un ayudante llamado fat_preallocate(), compartido por fat_cont_expand() y por fat_fallocate(FALLOC_FL_KEEP_SIZE). Además, se sustituye la llamada genérica por una variante especÃfica de FAT, fat_cont_expand_simple(), para evitar volver a comprobar el tamaño después de que los clústeres ya se hayan asignado.
¿A quién beneficia la aceleración de FAT32 y en qué condiciones?
El mayor impacto se observa cuando concurren clústeres pequeños y montajes sÃncronos. En ese escenario, la suma de asignaciones repetidas se hace más visible y la preasignación reduce el coste de la secuencia. Fuera de esas condiciones, las fuentes no permiten anticipar una ganancia concreta ni trasladar el dato de 162 veces a cualquier dispositivo.
Para quien administra sistemas que dependen de FAT32, la pista útil es revisar si su configuración se parece a la que favoreció los mejores resultados: tamaño de clúster reducido y montaje sÃncrono. La optimización se aprecia una vez actualizado el kernel; no llega como una versión independiente, sino dentro de la ronda de correcciones de Linux 7.4-rc2.
¿Qué otras correcciones incluye Linux 7.4-rc2?
La solicitud que llevó la mejora al kernel reúne tres cambios en FAT: la preasignación de clústeres, un arreglo para una carrera entre un fallo de escritura y FIBMAP que podÃa convertir erróneamente el sistema de archivos en solo lectura, y una corrección de los conteos de enlaces de directorio después de un renombrado.
La mayor parte del lote corresponde a OCFS2. Allà se atienden problemas de corrupción y ausencia de atributos extendidos, errores del kernel y fallos durante la configuración de clústeres, la migración de bloques, la recuperación y el desmontaje. También se corrige el movimiento de atributos extendidos para validar su rango frente a un tamaño de archivo estable.
Fuera de esos sistemas de archivos, el paquete incluye un arreglo en la cadena de contaminación del kernel que evita una lectura fuera de lÃmites capaz de exponer contenido de la memoria slab en el registro. Se añaden además correcciones de compilación para módulos de OpenRISC en procesadores sin multiplicación por hardware y para Clang 24.
¿Cómo se aprovecha la mejora y qué pasos prácticos hay?
El parche no se presenta como una versión independiente del kernel: forma parte del código que se integra con Linux 7.4-rc2. Lo práctico es identificar si el volumen y el montaje se parecen a los escenarios que se beneficiaron de la preasignación.
- Comprobar si el volumen es FAT32 con clústeres pequeños, la combinación donde se observaron las mayores ganancias.
- Revisar si el montaje es sÃncrono, la otra condición que delimita los resultados de hasta 162 veces.
- Esperar a que la actualización del kernel esté disponible en el sistema, ya que el parche no se presenta como una versión independiente.
El contexto: de 265 veces a la mejora que podrÃa llegar en Linux 7.5
El cambio es el último paso de una serie de mejoras para FAT32. Una optimización anterior, ya integrada en el ciclo Linux 7.4, alcanzó hasta 265 veces mejor rendimiento. Además, se espera otra modificación sustancial para FAT32 en Linux 7.5, aunque se trata de un trabajo distinto del parche de Linux 7.4-rc2.
El dato de 162 veces describe los resultados de determinados puntos de referencia con QEMU y no una promesa para todos los equipos. Lo verificable es que Linux 7.4-rc2 suma un ajuste concreto para la expansión de archivos en FAT y varias correcciones que abarcan FAT, OCFS2 y otros componentes del kernel.
.png)














