{"id":104123,"date":"2022-05-23T15:36:40","date_gmt":"2022-05-23T13:36:40","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/reliz-yadra-linux-5-18"},"modified":"2022-05-23T15:36:40","modified_gmt":"2022-05-23T13:36:40","slug":"reliz-yadra-linux-5-18","status":"publish","type":"post","link":"https:\/\/prohoster.info\/es\/blog\/news\/reliz-yadra-linux-5-18","title":{"rendered":"Lanzamiento del n\u00facleo Linux 5.18","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Despu\u00e9s de dos meses de desarrollo, Linus Torvalds present\u00f3 el lanzamiento del n\u00facleo Linux 5.18. Entre los cambios m\u00e1s destacados se encuentran: una gran limpieza de funcionalidades obsoletas, se ha declarado obsoleta el sistema de archivos Reiserfs, se han implementado eventos de trazado de procesos de usuario, se ha a\u00f1adido soporte para el mecanismo de bloqueo de exploits Intel IBT, se ha incluido un modo de detecci\u00f3n de desbordamientos de b\u00fafer al usar la funci\u00f3n memcpy(), se ha a\u00f1adido un mecanismo de seguimiento de llamadas a funciones fprobe, se ha mejorado el rendimiento del programador de tareas en CPUs AMD Zen, se ha incluido un controlador para gestionar la funcionalidad de CPUs Intel (SDS), se han integrado algunos parches para la reestructuraci\u00f3n de archivos de encabezado, y se ha aprobado la aplicaci\u00f3n del est\u00e1ndar C11.      <\/p>\n<p>En la nueva versi\u00f3n se han implementado 16,206 correcciones de 2,127 desarrolladores (en la versi\u00f3n anterior hubo 14,203 correcciones de 1,995 desarrolladores), el tama\u00f1o del parche es de 108 MB (los cambios afectaron a 14,235 archivos, se a\u00f1adieron 1,340,982 l\u00edneas de c\u00f3digo y se eliminaron 593,836 l\u00edneas). Aproximadamente el 44% de todas las modificaciones presentadas en 5.18 est\u00e1n relacionadas con controladores de dispositivos, alrededor del 16% se refiere a la actualizaci\u00f3n de c\u00f3digo espec\u00edfico para arquitecturas de hardware, el 11% est\u00e1 relacionado con la pila de redes, el 3% con sistemas de archivos y el 3% con subsistemas internos del n\u00facleo.           <\/p>\n<p>Novedades principales en el n\u00facleo 5.18:    <\/p>\n<ul>\n<li class=\"l\"> <b>Subsistema de disco, entrada\/salida y sistemas de archivos<\/b>\n<ul>\n<li class=\"l\"> En el sistema de archivos Btrfs se ha a\u00f1adido soporte para el pasaje de datos comprimidos al realizar operaciones de send y receive. Anteriormente, al utilizar send\/receive, el lado emisor descomprim\u00eda los datos almacenados de forma comprimida, mientras que el receptor volv\u00edan a comprimir antes de escribir. En el n\u00facleo 5.18, las aplicaciones en espacio de usuario que utilizan llamadas send\/receive tienen la posibilidad de transmitir datos comprimidos sin necesidad de reempaquetarlos. Esta funcionalidad se ha implementado gracias a las nuevas operaciones ioctl BTRFS_IOC_ENCODED_READ y BTRFS_IOC_ENCODED_WRITE, que permiten leer y escribir informaci\u00f3n directamente en los extremos.\n<p>Adem\u00e1s, en Btrfs se ha mejorado el rendimiento de fsync. Se ha a\u00f1adido la posibilidad de deduplicaci\u00f3n y ejecuci\u00f3n de reflink (clonaci\u00f3n de metadatos de archivo creando un enlace a datos ya existentes sin copiar realmente) para todo el almacenamiento, sin limitarse a los puntos de montaje.         <\/p>\n<li class=\"l\"> En el modo de entrada\/salida directa (Direct I\/O) se ha habilitado el acceso a archivos cifrados al usar cifrado inline de fscrypt, donde las operaciones de cifrado y descifrado son realizadas por el controlador del dispositivo en lugar del n\u00facleo. Con el cifrado est\u00e1ndar del n\u00facleo, el acceso a archivos cifrados mediante Direct I\/O sigue siendo imposible, ya que la interacci\u00f3n con los archivos se lleva a cabo eludiendo el mecanismo de almacenamiento en b\u00fafer del n\u00facleo.\n<li class=\"l\"> En el servidor NFS, por defecto, se ha habilitado el soporte para el protocolo NFSv3, que ahora no requiere ser activado por separado y est\u00e1 disponible con la habilitaci\u00f3n general de NFS. NFSv3 se considera la versi\u00f3n principal y siempre soportada de NFS, y el soporte para NFSv2 podr\u00eda ser descontinuado en el futuro. Se ha incrementado significativamente la eficiencia al leer el contenido de los directorios.\n<li class=\"l\"> El sistema de archivos ReiserFS ha sido clasificado como obsoleto y se espera su eliminaci\u00f3n en 2025. La clasificaci\u00f3n de ReiserFS como obsoleto permitir\u00e1 reducir los costos de mantenimiento de los cambios comunes entre sistemas de archivos relacionados con el soporte de una nueva API para el montaje, iomap y folios.\n<li class=\"l\"> Para el sistema de archivos F2FS, se ha implementado la posibilidad de mapear identificadores de usuarios de sistemas de archivos montados, que se utiliza para asociar archivos de un usuario espec\u00edfico en una partici\u00f3n montada de otro usuario con otro usuario en el sistema actual.\n<li class=\"l\"> Se ha reescrito el c\u00f3digo para el conteo de estad\u00edsticas en los controladores de Device-mapper, lo que ha permitido aumentar significativamente la precisi\u00f3n del conteo en controladores como dm-crypt.\n<li class=\"l\"> Para dispositivos NVMe, se ha implementado soporte para sumas de verificaci\u00f3n de 64 bits para la verificaci\u00f3n de integridad.\n<li class=\"l\"> Para el sistema de archivos exfat se ha propuesto una nueva opci\u00f3n de montaje \u00abkeep_last_dots\u00bb, que proh\u00edbe la eliminaci\u00f3n de los puntos al final del nombre de archivo (en Windows, los puntos al final del nombre se eliminan por defecto).\n<li class=\"l\"> En EXT4 se ha mejorado el rendimiento del modo fast_commit y se ha aumentado la escalabilidad. La opci\u00f3n de montaje \u00abmb_optimize_scan\u00bb, que permite mejorar el rendimiento en condiciones de alta fragmentaci\u00f3n del sistema de archivos, se ha adaptado para trabajar con archivos con extensiones.\n<li class=\"l\"> Se ha descontinuado el soporte para flujos de escritura (write stream) en el subsistema que gestiona los dispositivos de bloques. Esta funci\u00f3n fue propuesta para SSD, pero no se extendi\u00f3 y actualmente no existen dispositivos con soporte para este modo, siendo poco probable que aparezcan en el futuro.                      <\/ul>\n<li class=\"l\"> <b>Memoria y servicios del sistema<\/b>\n<ul>\n<li class=\"l\"> Se ha iniciado la integraci\u00f3n de un conjunto de parches que permite reducir significativamente el tiempo de recompilaci\u00f3n del n\u00facleo mediante la reestructuraci\u00f3n de la jerarqu\u00eda de archivos de cabecera y la reducci\u00f3n de dependencias cruzadas. En el n\u00facleo 5.18 se incluyen parches que optimizan la estructura de archivos de cabecera del planificador de tareas (kernel\/sched). En comparaci\u00f3n con la versi\u00f3n anterior, el consumo de tiempo del procesador durante la compilaci\u00f3n del c\u00f3digo kernel\/sched\/ se ha reducido en un 61%, y el tiempo real se ha reducido en un 3.9% (de 2.95 a 2.84 segundos).\n<li class=\"l\"> En el c\u00f3digo del n\u00facleo se ha permitido el uso del est\u00e1ndar C11, publicado en 2011. El c\u00f3digo que se a\u00f1ad\u00eda previamente al n\u00facleo deb\u00eda cumplir con la especificaci\u00f3n ANSI C (C89), que fue formulada en 1989. En los scripts de construcci\u00f3n del n\u00facleo 5.18, la opci\u00f3n \u2018--std=gnu89\u2019 se ha reemplazado por \u2018--std=gnu11 -Wno-shift-negative-value\u2019. Se consider\u00f3 la posibilidad de usar el est\u00e1ndar C17, pero en ese caso habr\u00eda que aumentar la versi\u00f3n m\u00ednima soportada de GCC, mientras que la inclusi\u00f3n de soporte para C11 cumple con los requisitos actuales para la versi\u00f3n de GCC (5.1).\n<li class=\"l\"> Se ha mejorado el rendimiento del planificador de tareas en procesadores AMD con microarquitectura Zen, en los que cada nodo con canales de memoria locales dispone de m\u00faltiples cach\u00e9s de \u00faltimo nivel (LLC, Last Level Cache). En la nueva versi\u00f3n se ha eliminado el desbalance de LLC entre nodos NUMA, lo que ha llevado a un aumento significativo del rendimiento en algunas cargas de trabajo.\n<li class=\"l\"> Se han ampliado las herramientas para la trazabilidad de aplicaciones en el espacio de usuario. En la nueva versi\u00f3n del n\u00facleo se ha a\u00f1adido la posibilidad de que los procesos de usuario creen eventos de trazabilidad (User events) y registren datos en un b\u00fafer de trazabilidad que pueden ser visualizados a trav\u00e9s de utilidades de trazabilidad del n\u00facleo, tales como ftrace y perf. Los eventos de trazabilidad del espacio de usuario est\u00e1n aislados de los eventos de trazabilidad del n\u00facleo. El estado de los eventos puede ser visualizado a trav\u00e9s del archivo \/sys\/kernel\/debug\/tracing\/user_events_status, y el registro de eventos y la grabaci\u00f3n de datos a trav\u00e9s del archivo \/sys\/kernel\/debug\/tracing\/user_events_data.\n<li class=\"l\"> Se ha agregado un mecanismo de seguimiento (probe) de llamadas a funciones \u2014 fprobe. La API fprobe se basa en ftrace, pero se limita a la capacidad de adjuntar manejadores de callback a los puntos de entrada y de salida de las funciones. A diferencia de kprobes y kretprobes, el nuevo mecanismo permite usar un \u00fanico manejador para varias funciones.\n<li class=\"l\"> Se ha retirado el soporte para los antiguos procesadores ARM (ARMv4 y ARMv5) que no cuentan con una unidad de gesti\u00f3n de memoria (MMU). Se mantiene el soporte para sistemas ARMv7-M sin MMU.\n<li class=\"l\"> Se ha retirado el soporte para la arquitectura NDS32, similar a RISC, que era utilizada en los procesadores de Andes Technologies. El c\u00f3digo fue eliminado debido a la falta de mantenimiento y la escasa demanda de soporte para NDS32 en el n\u00facleo principal de Linux (los pocos usuarios restantes utilizan versiones especializadas del n\u00facleo proporcionadas por los fabricantes de hardware).\n<li class=\"l\"> De manera predeterminada, se ha deshabilitado la compilaci\u00f3n del n\u00facleo con soporte para el formato de archivo ejecutable a.out para las arquitecturas alpha y m68k, donde este formato sigue siendo utilizado. Es probable que el soporte para el obsolete formato a.out sea completamente eliminado del n\u00facleo en el futuro cercano. Los planes para eliminar el formato a.out se han discutido desde 2019.\n<li class=\"l\"> Para la arquitectura PA-RISC, se ha implementado un soporte m\u00ednimo para el mecanismo vDSO (objetos compartidos din\u00e1micos virtuales), que proporciona un conjunto limitado de llamadas del sistema accesibles en el espacio del usuario sin cambiar de contexto. El soporte para vDSO ha permitido la posibilidad de ejecutar con una pila no ejecutable.\n<li class=\"l\"> Se ha a\u00f1adido soporte para el mecanismo Intel HFI (Hardware Feedback Interface), que permite al hardware transmitir informaci\u00f3n al n\u00facleo sobre el rendimiento actual y la eficiencia energ\u00e9tica de cada CPU.\n<li class=\"l\"> Se ha a\u00f1adido un controlador para el mecanismo Intel SDSi (Software-Defined Silicon), que permite gestionar la activaci\u00f3n de capacidades adicionales en el procesador (por ejemplo, instrucciones especializadas y memoria cach\u00e9 adicional). La idea es que los chips con funciones avanzadas bloqueadas puedan ser suministrados a un costo m\u00e1s bajo, que luego pueden ser \u00abcomprados\u00bb y activados sin necesidad de cambiar el hardware del chip.\n<li class=\"l\"> Se agreg\u00f3 el controlador amd_hsmp para el soporte de la interfaz AMD HSMP (Host System Management Port), que proporciona acceso a las funciones de gesti\u00f3n del procesador a trav\u00e9s de un conjunto de registros especiales, que aparecieron en los procesadores del servidor AMD EPYC a partir de la generaci\u00f3n Fam19h. Por ejemplo, a trav\u00e9s de HSMP se pueden obtener datos sobre el consumo de energ\u00eda y la temperatura, establecer l\u00edmites en la frecuencia, activar diferentes modos de aumento de rendimiento y gestionar los par\u00e1metros de funcionamiento de la memoria.\n<li class=\"l\"> En la interfaz de entrada\/salida as\u00edncrona io_uring se ha implementado la opci\u00f3n IORING_SETUP_SUBMIT_ALL para registrar en el b\u00fafer anular un conjunto de descriptores de archivos, as\u00ed como la operaci\u00f3n IORING_OP_MSG_RING, que permite enviar una se\u00f1al de un b\u00fafer anular a otro b\u00fafer anular.\n<li class=\"l\"> En el mecanismo DAMOS (Esquemas de Operaci\u00f3n Basados en Monitoreo de Acceso a Datos), que permite liberar memoria teniendo en cuenta la frecuencia de acceso a la memoria, se han ampliado las capacidades de control sobre las operaciones de memoria desde el espacio de usuario.\n<li class=\"l\"> Se ha integrado la tercera serie de parches con la implementaci\u00f3n del concepto de folios de p\u00e1gina de memoria (page folios), que se asemejan a las p\u00e1ginas de memoria combinadas (compound pages) pero se diferencian por su sem\u00e1ntica mejorada y su organizaci\u00f3n m\u00e1s clara del trabajo. El uso de folios permite acelerar la gesti\u00f3n de la memoria en ciertos subsistemas del n\u00facleo. En los parches propuestos se ha realizado la conversi\u00f3n a folios de funciones internas de gesti\u00f3n de memoria, incluyendo variedades de la funci\u00f3n get_user_pages(). Se ha proporcionado soporte para crear grandes folios en el c\u00f3digo de lectura anticipada de datos.\n<li class=\"l\"> En el sistema de construcci\u00f3n se ha a\u00f1adido soporte para las variables de entorno USERCFLAGS y USERLDFLAGS, mediante las cuales se pueden pasar banderas adicionales al compilador y al enlazador.\n<li class=\"l\"> En el subsistema eBPF, en el mecanismo BTF (BPF Type Format), que proporciona informaci\u00f3n para la verificaci\u00f3n de tipos en pseudo c\u00f3digo BPF, se ha implementado la posibilidad de agregar anotaciones a las variables que hacen referencia a \u00e1reas de memoria en el espacio de usuario. Las anotaciones ayudan al sistema de verificaci\u00f3n de c\u00f3digo BPF a identificar y verificar m\u00e1s eficazmente el acceso a la memoria.\n<li class=\"l\"> Se ha propuesto un nuevo manejador de asignaci\u00f3n de memoria para almacenar programas BPF cargados, que permite un uso m\u00e1s eficiente de la memoria en situaciones de carga de un gran n\u00famero de programas BPF.\n<li class=\"l\"> En la llamada del sistema madvise(), se ha a\u00f1adido una nueva bandera MADV_DONTNEED_LOCKED, que complementa la ya existente MADV_DONTNEED, permitiendo al n\u00facleo anticiparse a la liberaci\u00f3n de un bloque de memoria, es decir, comunic\u00e1ndole que este bloque ya no es necesario y puede ser utilizado por el n\u00facleo. A diferencia de MADV_DONTNEED, el uso de la bandera MADV_DONTNEED_LOCKED es permitido para las p\u00e1ginas de memoria bloqueadas en RAM, que, al invocar madvise, se expulsan sin cambiar su estado bloqueado y, en caso de un acceso posterior al bloque y la generaci\u00f3n de un \u00abpage fault\u00bb, son devueltas manteniendo su vinculaci\u00f3n. Tambi\u00e9n se ha a\u00f1adido un cambio que permite usar la bandera MADV_DONTNEED con grandes p\u00e1ginas de memoria en HugeTLB.              <\/ul>\n<li class=\"l\"> <b>Virtualizaci\u00f3n y seguridad<\/b>\n<ul>\n<li class=\"l\"> Para la arquitectura x86 se ha a\u00f1adido soporte para el mecanismo de protecci\u00f3n de ejecuci\u00f3n de instrucciones Intel IBT (Indirect Branch Tracking), que dificulta el uso de t\u00e9cnicas de construcci\u00f3n de exploits mediante m\u00e9todos de programaci\u00f3n orientada al retorno (ROP, Return-Oriented Programming), donde el exploit se forma como una cadena de llamadas a fragmentos de instrucciones de m\u00e1quina ya existentes en la memoria, que finalizan con una instrucci\u00f3n de retorno (generalmente, son los finales de funciones). La esencia del m\u00e9todo de protecci\u00f3n implementado radica en bloquear las transferencias indirectas al cuerpo de la funci\u00f3n mediante la adici\u00f3n de una instrucci\u00f3n especial ENDBR al inicio de la funci\u00f3n y permitir la ejecuci\u00f3n por transferencia indirecta \u00fanicamente si se transfiere a esta instrucci\u00f3n (una llamada indirecta a trav\u00e9s de JMP y CALL debe siempre desembocar en la instrucci\u00f3n ENDBR, que se coloca al principio de la funci\u00f3n).\n<li class=\"l\"> Se ha incluido una verificaci\u00f3n m\u00e1s estricta de los l\u00edmites de b\u00fafer en las funciones memcpy(), memmove() y memset(), que se lleva a cabo en la fase de compilaci\u00f3n al activar el modo CONFIG_FORTIFY_SOURCE. La modificaci\u00f3n a\u00f1adida consiste en comprobar el desbordamiento de los elementos de estructuras cuyo tama\u00f1o es conocido. Se se\u00f1ala que esta capacidad implementada podr\u00eda bloquear todas las vulnerabilidades relacionadas con memcpy() encontradas en el n\u00facleo, detectadas al menos en los \u00faltimos tres a\u00f1os.\n<li class=\"l\"> Se a\u00f1adi\u00f3 la segunda parte del c\u00f3digo de la implementaci\u00f3n actualizada del generador de n\u00fameros pseudoaleatorios RDRAND, responsable del funcionamiento de los dispositivos \/dev\/random y \/dev\/urandom. La nueva implementaci\u00f3n se destaca por unificar el funcionamiento de \/dev\/random y \/dev\/urandom, a\u00f1adiendo protecci\u00f3n contra la aparici\u00f3n de duplicados en el flujo de n\u00fameros aleatorios al inicio. <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/es\/vps\/\"   title=\"m\u00e1quinas virtuales\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"2100\">m\u00e1quinas virtuales<\/a> y la transici\u00f3n al uso de la funci\u00f3n hash BLAKE2s en lugar de SHA1 para las operaciones de mezcla de entrop\u00eda. Este cambio ha aumentado la seguridad del generador de n\u00fameros pseudoaleatorios al eliminar el problem\u00e1tico algoritmo SHA1 y excluir la reescritura del vector de inicializaci\u00f3n del RNG. Dado que el algoritmo BLAKE2s supera a SHA1 en rendimiento, su aplicaci\u00f3n tambi\u00e9n ha tenido un impacto positivo en el rendimiento.\n<li class=\"l\"> Para la arquitectura ARM64 se ha incorporado el soporte de un nuevo algoritmo de autenticaci\u00f3n de punteros \u2014 \u00abQARMA3\u00bb, que es m\u00e1s r\u00e1pido que el algoritmo QARMA pero mantiene un nivel adecuado de seguridad. La tecnolog\u00eda permite utilizar instrucciones especializadas de ARM64 para verificar las direcciones de retorno mediante firmas digitales, que se almacenan en los bits superiores no utilizados del mismo puntero.\n<li class=\"l\"> Para la arquitectura ARM64 se ha implementado el soporte para compilar con la inclusi\u00f3n en GCC 12 de un modo de protecci\u00f3n contra la sobrescritura de la direcci\u00f3n de retorno desde una funci\u00f3n en caso de desbordamiento de b\u00fafer en la pila. La esencia de la protecci\u00f3n reside en guardar, despu\u00e9s de transferir el control a la funci\u00f3n, la direcci\u00f3n de retorno en una \u00abpila sombra\u00bb separada y extraer esta direcci\u00f3n antes de salir de la funci\u00f3n.\n<li class=\"l\"> Se ha a\u00f1adido un nuevo almac\u00e9n de claves (keyring) \u2014 \u00abmachine\u00bb, que contiene las claves del propietario del sistema (MOK, Machine Owner Keys), soportadas en el cargador shim. Estas claves pueden ser utilizadas para certificar con firma digital los componentes del n\u00facleo que se cargan en la fase posterior al arranque inicial (por ejemplo, los m\u00f3dulos del n\u00facleo).\n<li class=\"l\"> Se elimin\u00f3 el soporte para claves privadas asim\u00e9tricas para TPM, que se ofrecieron en la versi\u00f3n obsoleta de TPM, tienen problemas de seguridad conocidos y no se han generalizado en la pr\u00e1ctica.\n<li class=\"l\"> Se a\u00f1adi\u00f3 protecci\u00f3n de datos del tipo size_t contra desbordamientos enteros. En el c\u00f3digo se utilizan los manejadores size_mul(), size_add() y size_sub(), que permiten realizar multiplicaciones, sumas y restas de tama\u00f1os del tipo size_t de forma segura.\n<li class=\"l\"> Al compilar el n\u00facleo se han incluido las banderas \u00ab-Warray-bounds\u00bb y \u00ab-Wzero-length-bounds\u00bb, que emiten advertencias cuando un \u00edndice excede los l\u00edmites de un array y cuando se utilizan arrays de longitud cero.\n<li class=\"l\"> El dispositivo virtio-crypto ha a\u00f1adido soporte para cifrado utilizando el algoritmo RSA.                                 <\/ul>\n<li class=\"l\"> <b>Subsistema de red<\/b>\n<ul>\n<li class=\"l\"> En la implementaci\u00f3n de puentes de red se ha a\u00f1adido soporte para el modo de bloqueo de puertos (locked mode), donde el usuario puede enviar tr\u00e1fico a trav\u00e9s de un puerto solo con una direcci\u00f3n MAC permitida. Tambi\u00e9n se ha a\u00f1adido la posibilidad de utilizar m\u00faltiples estructuras para evaluar el estado del protocolo STP (Spanning Tree Protocol). Anteriormente, la vinculaci\u00f3n para VLAN solo pod\u00eda hacerse de forma directa a STP (1:1), donde cada VLAN era gestionada de manera independiente. En la nueva versi\u00f3n se ha a\u00f1adido el par\u00e1metro mst_enable, que, al estar activado, permite que el estado de las VLAN sea controlado por el m\u00f3dulo MST (Multiple Spanning Trees) y que la vinculaci\u00f3n de las VLAN pueda corresponderse con el modelo M:N.\n<li class=\"l\"> Se ha continuado el trabajo de integraci\u00f3n en la pila de red de herramientas para rastrear las causas del descartado de paquetes (c\u00f3digos de motivo). El c\u00f3digo de motivo se transmite durante la liberaci\u00f3n de la memoria asociada al paquete y permite tener en cuenta situaciones como el descarte de un paquete debido a errores en los campos del encabezado, la detecci\u00f3n de suplantaci\u00f3n de identidad por parte del filtro rp_filter, un checksum incorrecto, falta de memoria, activaci\u00f3n de reglas IPSec XFRM, un n\u00famero de secuencia TCP incorrecto, etc.\n<li class=\"l\"> Se ha habilitado la posibilidad de transmitir paquetes de red desde programas BPF, que se ejecutan desde el espacio de usuario en modo BPF_PROG_RUN, donde los programas BPF se ejecutan en el n\u00facleo pero devuelven resultados al espacio de usuario. Los paquetes se transmiten utilizando la subestructura XDP (eXpress Data Path). Se admite el modo live de procesamiento de paquetes, donde el manejador de XDP puede redirigir paquetes de red sobre la marcha al stack de red o a otros dispositivos. Tambi\u00e9n es posible crear generadores de tr\u00e1fico externo por software o insertar tramas de red en el stack de red.\n<li class=\"l\"> Para los programas BPF, que se adjuntan a cgroups de red, se han propuesto funciones auxiliares para establecer expl\u00edcitamente el valor devuelto por las llamadas al sistema, lo que permite transmitir informaci\u00f3n m\u00e1s completa sobre las razones del bloqueo de la llamada al sistema.\n<li class=\"l\"> Se ha a\u00f1adido soporte para paquetes fragmentados en la subestructura XDP (eXpress Data Path), colocados en m\u00faltiples buffers, lo que permite manejar Jumbo-frames en XDP y aplicar TSO\/GRO (TCP Segmentation Offload\/Generic Receive Offload) para XDP_REDIRECT.\n<li class=\"l\"> Se ha acelerado significativamente el proceso de eliminaci\u00f3n de espacios de nombres de red, lo que ha sido solicitado en algunos sistemas grandes con alto volumen de tr\u00e1fico.                      <\/ul>\n<li class=\"l\"> <b>Hardware<\/b>\n<ul>\n<li class=\"l\"> En el controlador amdgpu, la tecnolog\u00eda de sincronizaci\u00f3n adaptativa FreeSync est\u00e1 habilitada por defecto, lo que permite ajustar la frecuencia de actualizaci\u00f3n de la informaci\u00f3n en pantalla, garantizando fluidez y ausencia de desgarros de imagen durante los juegos y la visualizaci\u00f3n de videos. Se ha declarado la compatibilidad estable con la GPU Aldebaran.\n<li class=\"l\"> En el controlador i915 se ha a\u00f1adido soporte para los chips Intel Alderlake N y las tarjetas gr\u00e1ficas discretas Intel DG2-G12 (Arc Alchemist).\n<li class=\"l\"> En el controlador nouveau se ha mejorado el soporte para tasas de bits m\u00e1s altas en las interfaces DP\/eDP y se ha a\u00f1adido soporte para extensores de cable lttprs (Link-Training Tunable PHY Repeaters).\n<li class=\"l\"> En el subsistema drm (Gestor de Renderizado Directo) de los controladores armada, exynos, gma500, hyperv, imx, ingenic, mcde, mediatek, msm, omap, rcar-du, rockchip, sprd, sti, tegra, tilcdc, xen y vc4 se ha a\u00f1adido soporte para el par\u00e1metro nomodeset, que permite desactivar el cambio de modos de video a nivel de n\u00facleo y el uso de medios para la aceleraci\u00f3n de renderizado, dejando solo las funcionalidades relacionadas con el framebuffer del sistema.\n<li class=\"l\"> Se ha a\u00f1adido soporte para SoCs ARM Qualcomm Snapdragon 625\/632 (utilizados en smartphones LG Nexus 5X y Fairphone FP3), Samsung Exynos 850, Samsung Exynos 7885 (utilizados en Samsung Galaxy A8), Airoha (Mediatek\/EcoNet) EN7523, Mediatek mt6582 (tableta Prestigio PMT5008 3G), Microchip Lan966, Renesas RZ\/G2LC, RZ\/V2L, Tesla FSD, TI K3\/AM62 e i.MXRTxxxx.\n<li class=\"l\"> Se ha a\u00f1adido soporte para dispositivos y placas ARM de Broadcom (Raspberry Pi Zero 2 W), Qualcomm (Google Herobrine R1 Chromebook, SHIFT6mq, Samsung Galaxy Book2), Rockchip (Pine64 PineNote, Bananapi-R2-Pro, STM32 Emtrion emSBS, Samsung Galaxy Tab S, tableta Prestigio PMT5008 3G), Allwinner (A20-Marsboard), Amlogic (Amediatek X96-AIR, CYX A95XF3-AIR, Haochuangy H96-Max, Amlogic AQ222 y OSMC Vero 4K+), Aspeed (Quanta S6Q, ASRock ROMED8HM3), Marvell MVEBU\/Armada (Ctera C200 V1 y V2 NAS), Mstar (DongShanPiOne, Miyoo Mini), NXP i.MX (Protonic PRT8MM, emCON-MX8M Mini, Toradex Verdin, Gateworks GW7903).\n<li class=\"l\"> Se ha a\u00f1adido soporte para sistemas de sonido y c\u00f3decs como AMD PDM, Atmel PDMC, Awinic AW8738, i.MX TLV320AIC31xx, Intel CS35L41, ESSX8336, Mediatek MT8181, nVidia Tegra234, Qualcomm SC7280, Renesas RZ\/V2L y Texas Instruments TAS585M. Se ha a\u00f1adido una implementaci\u00f3n inicial del controlador de sonido para el chip DSP Intel AVS. Se ha actualizado el soporte para controladores de Intel ADL y Tegra234, y se han realizado cambios para mejorar el soporte de audio en dispositivos de Dell, HP, Lenovo, ASUS, Samsung y Clevo.    <\/ul>\n<p>Al mismo tiempo, la Fundaci\u00f3n de Software Libre de Am\u00e9rica Latina form\u00f3 una versi\u00f3n completamente libre del n\u00facleo 5.18 \u2014 Linux-libre 5.18-gnu, limpiado de elementos de firmware y controladores que contienen componentes no libres o secciones de c\u00f3digo cuya aplicaci\u00f3n est\u00e1 limitada por el fabricante. En esta nueva versi\u00f3n se realiz\u00f3 la limpieza de controladores para paneles MIPI DBI, VPU Amphion, WiFi MediaTek MT7986 WMAC, Mediatek MT7921U (USB) y Realtek 8852a\/8852c, as\u00ed como de los chips de sonido Intel AVS y Texas Instruments TAS5805M. Tambi\u00e9n se limpi\u00f3 archivos DTS para diferentes SoC Qualcomm con procesadores basados en la arquitectura AArch64. Se actualiz\u00f3 el c\u00f3digo de limpieza de blobs en los controladores y subsistemas AMD GPU, MediaTek MT7915, Silicon Labs WF200+ WiFi, Mellanox Spectru Ethernet, Realtek rtw8852c, Qualcomm Q6V5, Wolfson ADSP y MediaTek HCI UART.                         <\/ul>\n<p>Fuente: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=57235\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.18. \u0421\u0440\u0435\u0434\u0438 \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0437\u0430\u043c\u0435\u0442\u043d\u044b\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439: \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0430 \u0431\u043e\u043b\u044c\u0448\u0430\u044f \u0447\u0438\u0441\u0442\u043a\u0430 \u0443\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0435\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438, \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0430 \u0443\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0435\u0439 \u0424\u0421 Reiserfs, \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u0441\u043e\u0431\u044b\u0442\u0438\u044f \u0442\u0440\u0430\u0441\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0445 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0432, \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u044d\u043a\u0441\u043f\u043b\u043e\u0438\u0442\u043e\u0432 Intel IBT, \u0432\u043a\u043b\u044e\u0447\u0451\u043d \u0440\u0435\u0436\u0438\u043c \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0431\u0443\u0444\u0435\u0440\u043e\u0432 \u043f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 memcpy(), \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0432\u044b\u0437\u043e\u0432\u043e\u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 fprobe, \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0430 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-104123","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.18.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/es\/blog\/news\/reliz-yadra-linux-5-18\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0420\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.18 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.18.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/es\/blog\/news\/reliz-yadra-linux-5-18\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2022-05-23T13:36:40+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2022-05-23T13:36:40+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Lanzamiento del n\u00facleo Linux 5.18 | ProHoster","description":"Despu\u00e9s de dos meses de desarrollo, Linus Torvalds ha presentado el lanzamiento del n\u00facleo Linux 5.18.","canonical_url":"https:\/\/prohoster.info\/es\/blog\/news\/reliz-yadra-linux-5-18","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"es_ES","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0420\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.18 | ProHoster","og:description":"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.18.","og:url":"https:\/\/prohoster.info\/es\/blog\/news\/reliz-yadra-linux-5-18","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2022-05-23T13:36:40+00:00","article:modified_time":"2022-05-23T13:36:40+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"104123","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-02-09 18:15:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2022-05-23 13:37:44","updated":"2026-02-09 18:15:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/104123","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/comments?post=104123"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/104123\/revisions"}],"predecessor-version":[{"id":159344,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/104123\/revisions\/159344"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=104123"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=104123"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=104123"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}