Desde Linux David Y. Naranjo  

Kernel Linux 7.3: aislamiento failfs, mejoras en Btrfs, Ext4, soporte para Apple M3 y mas

Tux, la mascota del Kernel de Linux

Tras dos meses de desarrollo, Linus Torvalds dio a conocer el lanzamiento del kernel Linux 7.3, una actualización que incorpora 20,260 parches aportados por 3171 desarrolladores (807 de ellos contribuyendo por primera vez). Esta versión, cuyo tamaño por parche promedia los 63 MB, modifica casi 15,000 archivos, sumando más de 940,000 líneas de código y eliminando cerca de 300,000.

Esta versión introduce mejoras críticas en la gestión del almacenamiento, y es que Btrfs ha optimizado drásticamente su rendimiento, multiplicando por cinco la velocidad en cargas de trabajo intensivas con fsync (como la escritura de registros) en unidades no SSD, y reemplazando estructuras internas para acelerar operaciones en búferes no almacenables.

Como contrapartida, Btrfs ha retirado el soporte para su primera versión de caché de espacio libre, obligando a los usuarios de sistemas antiguos a migrar mediante la utilidad btrfstune. Por su parte, Ext4 acelera las escrituras paralelas y declara obsoleto el modo de montaje data=journal, programando su eliminación para 2028 debido al impacto negativo en el rendimiento.

En cuanto a otros formatos, el kernel 7.3 marca el fin del soporte para los arcaicos sistemas EFS (IRIX) y FreeVxFS (SCO UnixWare), eliminándolos del código fuente. FUSE recibe una mejora de rendimiento y menor consumo de memoria al implementar E/S asíncrono con io_uring y eliminar copias innecesarias de memoria (copia cero). Además, NTFS3 implementa soporte inicial para flujos de datos alternativos (ADS), y la variante de solo lectura ahora soporta compresión transparente vía Windows Overlay Filter (WOF).

Otras de las mejoras que presenta el Kernel de Linux 7.3, es el comportamiento ante la escasez de VRAM. Ahora, las aplicaciones sin cuota garantizada verán sus búferes desalojados hacia la RAM del sistema (GTT) para liberar espacio y asegurar el funcionamiento de aplicaciones prioritarias, un cambio soportado en los controladores nouveau, xe y amdgpu.

Virtualización, seguridad y aislamiento

Linux 7.3 introduce nuevos mecanismos para el aislamiento de procesos, y es que se estrena un nuevo ecosistema basado en el pseudosistema de archivos failfs y la llamada al sistema fchroot(). A diferencia de nullfs, failfs opera bajo el principio de «no se mantiene nada», bloqueando el montaje de particiones, la clonación y la monitorización de su estado. Si un proceso opera dentro de failfs, se le restringe el uso de rutas absolutas o relativas, limitando su acceso exclusivamente a descriptores de archivo preabiertos.

Para la virtualización, la función userfaultfd permite ahora a los hipervisores monitorizar los accesos a la memoria del sistema invitado. Esto facilita la identificación de páginas inactivas para desalojarlas hacia la memoria secundaria, utilizando el nuevo indicador UFFDIO_REGISTER_MODE_RWP para interceptar infracciones de lectura/escritura con mayor rendimiento.

Por otra parte, el kernel restringe por defecto el acceso a los aceleradores por hardware AF_ALG desde el espacio de usuario (mediante el parámetro sysctl af_alg_restrict) para mitigar vulnerabilidades que permitían modificar datos en la caché de páginas. Paralelamente, la librería interna libcrypto añade soporte para algoritmos modernos de cifrado AES (como XTS, GCM y XCTR).

Redes, hardware y Rust

En la pila de red, el servidor ksmbd añade soporte para extensiones de Apple Time Machine, facilitando copias de seguridad de macOS, además de cifrado mediante RDMA (SMB Direct). En infraestructuras virtuales, los túneles UDP (VXLAN, GENEVE) ya pueden manejar paquetes BIG TCP de hasta 4 GB.

El soporte de hardware se expande con la llegada de los SoC Apple M3 Pro, Max y Ultra, incluyendo gestión de energía. El controlador amdgpu añade soporte inicial para la arquitectura DCN 6.0.0 y paneles OLED de bajo consumo, mientras que los desarrollos en Rust continúan su avance. El controlador experimental Nova para GPUs NVIDIA actualiza sus imágenes de firmware TLV, y el lenguaje de programación se habilita oficialmente para arquitecturas PowerPC.

Como contraparte a las novedades, el kernel se prepara para una purga: se ha programado la eliminación de plataformas ARM antiguas y obsoletas (como sa1100, i.MX31, pxa) para la próxima versión 7.5, lo que retirará casi 55.000 líneas de código para aligerar el mantenimiento.

Finalmente, si estas interesado en poder conocer mas al respecto, puedes consultar los detalles en el siguiente enlace.

Cabe mencionar que esta nueva version debería estar llegando a los repositorios de las principales distribuciones. En algunas ya se encuentra disponible (Arch Linux, Ubuntu, Debian, entre otras).

Artículo original

Leave A Comment

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.