Linux 6.1 introduce la infraestructura de Rust y estas otras novedades
Tal y como se esperaba, Linus Torvalds ha lanzado hoy Linux 6.1. Se trata de una nueva versión estable, y como tal, llega con novedades interesantes. Como en todos y cada uno de los lanzamientos, se ha incluido soporte para nuevo hardware, pero si por algo tiene que pasar a la historia esta versión, ese algo será por añadir el soporte inicial para Rust. No hay código real, pero los cimientos ya están aquÃ.
Asà lo notificó el propio Torvalds en la primera Release Candidate de Linux 6.1, concretamente cuando dijo que «tenemos algunas cosas básicas que se han estado gestando durante mucho tiempo, sobre todo la serie de VM LRU multigénica, y el andamiaje inicial de Rust (todavÃa no hay código real de Rust en el núcleo, pero la infraestructura está ahÃ)». Con la versión estable ya disponible, llega el momento de hablar de sus novedades.
Novedades más destacadas de Linux 6.1
La lista de novedades más destacadas es:
- Procesadores:
- El código de IBM POWER/PowerPC tiene KFENCE para 64 bits, entre otras novedades.
- El puerto de CPU de LoongArch aporta una revisión del código TLB/caché, compatibilidad con QSpinLock, arranque EFI, compatibilidad con eventos perf, gestión de Kexec, compatibilidad con eBPF JIT y varias otras caracterÃsticas para esta arquitectura de CPU china.
- Se está dejando de soportar BF16 para los procesadores Cortex-A510 debido a un problema de hardware que no puede ser resuelto en Linux.
- Trabajo de la tabla de páginas AMD IOMMU v2 como parte de la virtualización IOMMU asistida por hardware AMD vIOMMU para los procesadores EPYC 7002 «Rome» y más recientes.
- Informes de memoria y caché de la CPU de AMD con procesadores AMD perf y más recientes y compatibilidad con LbrExtV2 para las CPU Zen 4.
- El marco de gestión de la plataforma AMD (PMF) se fusionó para un mejor manejo térmico/de energÃa/ruido con los dispositivos AMD Ryzen de próxima generación.
- Compatibilidad con los nuevos SoCs ARM y varios dispositivos nuevos ARM.
- Decodificación de errores de memoria Intel más rápida.
- Correcciones de AMD P-State y s2idle para los portátiles AMD Rembrandt.
- Soporte en ARM para deshabilitar la mitigación de Spectre-BHB en tiempo de ejecución debido al gran coste de rendimiento.
- Gráficos y GPUs:
- Continuación de la habilitación de Intel Meteor Lake.
- Mejora de la gestión del firmware de la GPU de Intel.
- Varias mejoras de Intel Arc Graphics DG2/Alchemist.
- Soporte para AMDGPU gang submit que es necesario para el controlador RADV Vulkan para el correcto soporte de mesh shader.
- Soporte para restablecimiento de Mode2 para las GPUs RDNA2 de la serie RX 6000.
- Almacenamiento y sistemas de archivos:
- La configuración por defecto del kernel de RISC-V permite varios formatos de imagen de CD-ROM.
- Soporte de dominio compartido basado en FSCache para EROFS con casos de uso de contenedores como objetivo inicial.
- Correcciones y optimizaciones de rendimiento de EXT4.
- Optimizaciones significativas del rendimiento de Btrfs y otros trabajos para este sistema de archivos de Linux cada vez más utilizado.
- Soporte para statx() para reportar detalles de alineación de E/S directa.
- Otro hardware:
- Detección automática de la compatibilidad con el desplazamiento de alta resolución de Logitech HID++ e intento de habilitar HID++ para todos los dispositivos Bluetooth de Logitech.
- Notable adición de soporte de sonido con AMD Rembrandt añadido al código Sound Open Firmware, nuevo soporte de coprocesador de audio AMD «Pink Sardine» y el nuevo controlador Apple MCA SoC para soporte de sonido en los nuevos dispositivos Apple Silicon.
- Preparaciones de WiFi Extremely High Throughput (EHT) y Multi-Link Operation (MLO) para WiFi 802.11be y WiFi 7.
- Continuación de la habilitación de Intel Habana Labs Gaudi2 para ese acelerador de IA de próxima generación.
- Un controlador de entrada para el IBM Operation Panel.
- Se añadió un controlador de caja de teclado PINE64 PinePhone (Pro) para la entrada en Linux.
- Soporte para Intel Meteor Lake Thunderbolt.
- Soporte de control de flujo USB4 de extremo a extremo con el controlador de red Thunderbolt del kernel de Linux.
- Mejor manejo de los mandos de Nintendo «clones baratos».
- Nuevos controladores de medios de comunicación y dos controladores existentes fueron promovidos fuera de la puesta en escena.
- Varias adiciones de controladores de monitoreo de hardware.
- Virtualización:
- Xen ahora soporta VirtIO basado en subvenciones para x86_64.
- Soporte de «borrado seguro» de bloques VirtIO asà como soporte de aprovisionamiento de caracterÃsticas vDPA.
- Compartición de archivos más rápida entre el host y las VMs invitadas para aquellos que hacen uso del protocolo 9P gracias a una importante optimización de 9P VirtIO.
- Seguridad:
- El Kernel Memory Sanitizer fue fusionado como un detector de errores de memoria dinámica alrededor de los valores no inicializados dentro del código del kernel. Este KMSAN depende de la instrumentación del compilador que se encuentra actualmente con LLVM Clang.
- Linux 6.1 advertirá por defecto sobre los mapeos del kernel W+X y en una futura versión del kernel puede prohibir que se creen dichos mapeos en primer lugar.
- Trabajo de EFI en torno al cómputo confidencial.
- Endurecimiento de Retpolines para asegurar un INT3 después de cada salto incondicional.
- SELinux continúa desaprovechando el soporte de deshabilitación en tiempo de ejecución.
- Mejoras en el código RNG y crypto.
- Advertencias en tiempo de ejecución para memcpy() de campo cruzado que habrÃan capturado todos los desbordamientos de búfer basados en memcpy en los últimos años para el kernel.
- Otros:
- Más limpiezas de código por delante de PREEMPT_RT.
- Mejoras en el manejo de la información de presión de parada (PSI), incluyendo la capacidad de activar/desactivar los datos PSI a nivel de cada grupo.
- Soporte de arranque comprimido EFI genérico.
- Eliminación del controlador de alta velocidad serial / TTY sobre IEEE-1394 Firewire.
- Se ha terminando de eliminar el antiguo código a.out.
- Se eliminó el antiguo código de red DECnet.
- Se fusionó MGLRU para revisar el código de recuperación de páginas del kernel de Linux y mejorar la experiencia del usuario, especialmente en los sistemas Linux con capacidades de RAM limitadas.
- Linux 6.1 imprimirá el núcleo de la CPU donde se produzca un fallo de segmentación. Si los administradores de sistemas Linux descubren que los fallos de segmentación siguen ocurriendo en las mismas CPUs / núcleos, puede ser un signo de un procesador defectuoso.
- La infraestructura inicial de Rust ha sido fusionada como el soporte inicial del lenguaje de programación Rust. En futuros ciclos del kernel se fusionarán nuevos controladores de Rust y otras abstracciones del subsistema del kernel.
Linux 6.1 ya está disponible en kernel.org. La mayorÃa de distribuciones esperarán a la primera actualización de mantenimiento para su adopción. Se espera que esta sea la versión LTS de 2022.