Ya tenemos aquí una nueva versión del kernel del/los sistema/s operativo/s que más nos gusta a los editores y lectores de blogs como este. En esta ocasión, tras 5.18 le tocaba el turno a Linux 5.19, del que Linus Torvalds acaba de anunciar su lanzamiento. Al decir lo de que «le tocaba», me refiero a que era lo lógico, y así fue desde que comenzó su desarrollo, pero hubo alguna duda más sobre si la siguiente sería Linux 5.20 o ya Linux 6.0. Pero este artículo va sobre la última versión estable, cuyo lanzamiento ya es oficial.
Linux 5.19 es un lanzamiento importante. Ya en la ventana de fusión se comprobó que iba a haber muchos cambios, aunque la cantidad de los mismos no ha hecho que el kernel crezca en tamaño. A continuación tenéis una lista con las novedades más destacadas, recogida de Phoronix, un medio especializado que sigue muy de cerca el desarrollo de Linux, entre otras cosas como sus famosos análisis y comparaciones de todo tipo de hardware.
Novedades más destacadas de Linux 5.19
- Procesadores y plataformas:
- Intel In-Field Scan (IFS) se ha fusionado para facilitar las pruebas de silicio de la CPU antes de las implantaciones en el centro de datos o las pruebas de silicio a lo largo del tiempo para ayudar a detectar cualquier problema de hardware no descubierto por las comprobaciones de ECC u otras pruebas existentes.
- LoongArch se fusionó como un nuevo puerto de CPU para el kernel de Linux. Sin embargo, como se ha señalado, todavía no hay soporte para arrancar ningún sistema LoongArch debido a que algunos controladores aún no están listos para el mainlining.
- Soporte para la placa FPGA PolarBerry RISC-V que hace uso del SoC PolarFire.
- Soporte para ejecutar binarios de 32 bits (RV32) en RISC-V de 64 bits (RV64).
- Completar el esfuerzo de 12 años de Arm multiplataforma con la conversión finalmente del viejo código ARMv4T/ARMv5 para las construcciones del kernel multiplataforma. También se ha completado el soporte multiplataforma de Arm para el antiguo hardware Intel XScale/PXA.
- Se añade el SoC HPE GXP que se utilizará para las funciones del controlador de gestión de la placa base (BMC) en los próximos servidores HPE.
- Compatibilidad con ARMv9 Scalable Matrix Extension. Scalable Matrix Extension (SME) se basa en SVE/SVE2.
- Los cambios en el perfeccionamiento son importantes en el lado de AMD, con extensiones Zen 4 IBS, AMD PerfMonV2 y, finalmente, con AMD Zen 3 Branch Sampling (BRS).
- Eliminación de la antigua arquitectura de CPU Renesas H8/300. Esta arquitectura es antigua y lleva años sin ser mantenida en el kernel, siendo ya eliminada una vez de la línea principal.
- Eliminación del soporte obsoleto de x86 a.out.
- Muchas actualizaciones térmicas y de gestión de la energía de Intel, incluyendo una solución para los portátiles Linux calientes que agotan la batería mientras intentan dormir.
- Limpieza más fácil de las características del CPUID.
- Carga tardía de microcódigo para x86/x86_64 deshabilitada por defecto y que contaminará el kernel. Se recomienda a los usuarios cargar temprano el microcódigo de la CPU.
- Virtualización:
- AMD SEV-SNP es finalmente mainlined para que la actualización de la virtualización cifrada segura (SEV) introducido con AMD EPYC 7003 «Milán» procesadores.
- Intel Trust Domain Extensions (TDX) se ha fusionado con el código temprano listo.
- Soporte para XSAVEC cuando se ejecuta como invitado de VM.
- Microsoft ha recortado los tiempos de arranque de los invitados de Hyper-V para las grandes máquinas virtuales de Azure con muchas GPU.
- Soporte para EFO de Linux para acceder a los secretos de las VM para hipervisores de computación confidencial (CoCo) como con AMD SEV.
- Actualizaciones de KVM y Xen.
- Un nuevo objetivo de máquina virtual m68k para el uso de la virtualización que se basa en Goldfish de Google y es mucho más capaz que las opciones de emulación de Motorola 68000 existentes.
- Gráficos y pantallas:
- Casi medio millón de líneas de código nuevo.
- Una gran cantidad de trabajo de habilitación de bloques IP para los gráficos AMD RDNA3 que se lanzarán a finales de este año junto con los aceleradores CDNA Instinct de próxima generación.
- IDs PCI de Intel DG2/Alchemist para diseños «motherboard down».
- Compatibilidad con los gráficos Intel Raptor Lake P, a partir de las rutas de código existentes.
- La ABI del motor de computación está ahora expuesta para el hardware DG2/Alchemist.
- Una peculiaridad de energía para las GPUs DG2/Alchemist para asegurar que la gestión de energía en estado activo (ASPM) de PCIe se habilite con éxito.
- Soporte del controlador ASpeed AST para DisplayPort.
- Compatibilidad con Rockchip VOP2.
- Compatibilidad con una nueva variante básica de RDNA2 «Beige Goby».
- Compatibilidad con MediaTek Vcodec para los códecs VP8 y VP9 sin estado.
- Sistemas de archivos y almacenamiento:
- Numerosas mejoras notables en el sistema de archivos Btrfs, desde la compatibilidad con subpáginas para cualquier PAGE_SIZE superior a 4K hasta la compatibilidad con subpáginas para los modos RAID 5/6 nativos de Btrfs y otras adiciones.
- Compatibilidad con la controladora NVMe M1 de Apple.
- Mucho código nuevo para el sistema de archivos XFS.
- Creación de archivos FAT16/FAT32/información de la hora de nacimiento a través de la llamada al sistema statx.
- Las correcciones del controlador del kernel NTFS3 se han fusionado para abordar finalmente algunos problemas de mantenimiento con este controlador del kernel NTFS aportado al kernel el año pasado por Paragon Software.
- Varias mejoras en F2FS y actualizaciones de rutina para EROFS y EXT4.
- Soporte para NFSv3 Courteous Server.
- Soporte de eMMC para usar TRIM para poner a cero los sectores.
- Soporte para capas IDMAPPED con OverlayFS.
- Una gran corrección de rendimiento para exFAT.
- Muchas mejoras en IO_uring.
- Otro hardware:
- Trabajo interminable en el controlador DWC3 USB3 de Synopsys.
- Se fusionó el controlador Apple eFuses para leer estos eFuses programados en los SoCs Apple M1 para almacenar datos de calibración.
- Se ha continuado trabajando en el controlador Intel Habana Labs AI.
- Soporte para iniciar actualizaciones de firmware a través de sysfs para el uso de tarjetas Intel FPGA PCIe y otros posibles casos de uso.
- Soporte para informar de la ubicación física de un dispositivo conectado cuando se expone como a través de ACPI. Esto puede ayudar a notar dónde está un componente conectado en relación con el servidor/sistema en casos de múltiples puertos/ubicaciones, etc.
- El controlador del joystick Raspberry Pi Sense HAT fue fusionado.
- Soporte del controlador EC de Chrome OS para el Framework Laptop.
- Habilitación continua del soporte de Compute Express Link (CXL) para los servidores de próxima generación.
- Mejor soporte para el teclado Lenovo ThinkPad Trackpoint II.
- Manejo adecuado de los teclados Keychron C-Series/K-Series.
- Mejoras en el controlador de Wacom y otros trabajos de HID.
- El controlador de audio AVS de Intel comenzó a aterrizar como una reescritura del antiguo código del controlador de audio de la era Skylake / Kabylake / Apollo Lake / Amber Lake.
- Continuación de las mejoras de monitoreo de hardware de las adiciones de placas base ASUS a los dispositivos Aquacomputer.
- Seguridad:
- Soporte de Clang RandStruct para aleatorizar la disposición de la estructura y similar al soporte existente de GCC.
- Continuación del trabajo de modernización del código RNG para la generación de números aleatorios.
- Los enclaves Intel SGX eran propensos a fallar bajo una gran presión de memoria, pero ese problema para las Software Guard Extensions en Linux ya está resuelto.
- Haciendo la vida miserable a los desarrolladores de aplicaciones que tienen un mal comportamiento en el uso de split-lock.
- Otros:
- Muchas mejoras significativas en la red, desde Big TCP hasta la iluminación LED pureLiFi para la comunicación inalámbrica, y muchas otras mejoras.
- Una nueva opción para configurar fácilmente un kernel de depuración x86_64.
- Printk ahora descargará los mensajes a KThreads por consola.
- Muchas mejoras en la gestión de la memoria.
- Un nuevo subsistema fusionado es el Hardware Timestamping Engine (HTE) para coordinar entre los proveedores de tiempo y los consumidores como GPIOs e IRQs. El proveedor inicial de HTE con Linux 5.19 es sólo para el SoC NVIDIA Tegra Xavier. Aunque a Linus Torvalds no le gusta el nombre HTE y podría cambiarse aún en este ciclo o en el siguiente.
- Limpieza de primavera al área de staging, incluyendo la promoción del driver WFX WiFi fuera del staging.
- Soporte de firmware comprimido Zstd como una alternativa al soporte existente de firmware comprimido XZ para ahorrar espacio en el disco comprimiendo los muchos archivos binarios de firmware presentes en los sistemas Linux modernos.
Linux 5.19 ha sido anunciado hace unos instantes, y ya está disponible su código, y pronto lo estará, en The Kernel Archive. Los usuarios de Ubuntu que quieran instalarlo ya mismo deberán hacerlo por su cuenta o con herramientas como UMKI, o esperar al lanzamiento de octubre y dar el salto a otro mayor.