{"id":35977,"date":"2019-10-31T22:08:56","date_gmt":"2019-10-31T19:08:56","guid":{"rendered":"https:\/\/prohoster.info\/blog\/reliz-yadra-linux-5-2\/"},"modified":"2019-10-31T22:08:56","modified_gmt":"2019-10-31T19:08:56","slug":"reliz-yadra-linux-5-2","status":"publish","type":"post","link":"https:\/\/prohoster.info\/es\/blog\/news\/reliz-yadra-linux-5-2","title":{"rendered":"Lanzamiento del n\u00facleo de Linux 5.2","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Despu\u00e9s de dos meses de desarrollo, Linus Torvalds <noindex><a rel=\"nofollow\" href=\"https:\/\/lkml.org\/lkml\/2019\/7\/7\/281\">present\u00f3<\/a><\/noindex> el lanzamiento del n\u00facleo <noindex><a rel=\"nofollow\" href=\"https:\/\/www.kernel.org\/\">Linux 5.2<\/a><\/noindex>. Entre los cambios m\u00e1s destacados se encuentran: el modo de operaci\u00f3n de Ext4 sin distinci\u00f3n de may\u00fasculas y min\u00fasculas, llamadas al sistema separadas para montar el FS, controladores para GPU Mali 4xx\/6xx\/7xx, la posibilidad de manejar cambios en los valores de sysctl en programas BPF, el m\u00f3dulo de device-mapper dm-dust, protecci\u00f3n contra ataques MDS, soporte para Sound Open Firmware para DSP, optimizaci\u00f3n del rendimiento BFQ, y la mejora de la subsistema PSI (Pressure Stall Information) para su uso en Android.<\/p>\n<p>En esta nueva versi\u00f3n se han realizado 15,100 correcciones por parte de 1,882 desarrolladores,<br \/>\nEl tama\u00f1o del parche \u2014 62 MB (los cambios afectan a 30889 archivos, se han a\u00f1adido 625094 l\u00edneas de c\u00f3digo y se han eliminado 531864 l\u00edneas). Aproximadamente el 45% de todo lo presentado en 5.2<br \/>\nest\u00e1n relacionadas con controladores de dispositivos, alrededor del 21% de los cambios tienen<br \/>\nrelaci\u00f3n con la actualizaci\u00f3n de c\u00f3digo espec\u00edfico para arquitecturas de hardware, el 12%<br \/>\nrelacionado con la pila de red, 3% \u2014 sistemas de archivos y 3% con internos<br \/>\nsubsistemas del n\u00facleo. El 12.4% de todos los cambios fueron preparados por Intel, el 6.3% \u2014 Red Hat, el 5.4% \u2014 Google, el 4.0% \u2014 AMD, el 3.1% \u2014 SUSE, el 3% \u2014 IBM, el 2.7% \u2014 Huawei, el 2.7% \u2014 Linaro, el 2.2% \u2014 ARM, el 1.6% \u2014 Oracle.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/kernelnewbies.org\/Linux_5.2\">Principales<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/788532\/\">novedades<\/a><\/noindex>:<\/p>\n<ul>\n<li class=\"l\"> <b>Subsistema de disco, entrada\/salida y sistemas de archivos<\/b>\n<ul>\n<li class=\"l\"> Para Ext4 se ha a\u00f1adido  <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=50581\">soporte<\/a><\/noindex> trabajo sin distinci\u00f3n de may\u00fasculas y min\u00fasculas en los nombres de archivos, que se activa solo en relaci\u00f3n con directorios vac\u00edos espec\u00edficos mediante un nuevo atributo \u00ab+F\u00bb (EXT4_CASEFOLD_FL). Al establecer este atributo en un directorio, todas las operaciones con archivos y subdirectorios dentro se realizar\u00e1n sin tener en cuenta la distinci\u00f3n de may\u00fasculas, incluida la b\u00fasqueda y apertura de archivos (por ejemplo, los archivos Test.txt, test.txt y test.TXT se considerar\u00e1n iguales en dichos directorios). Por defecto, el sistema de archivos sigue siendo sensible a las may\u00fasculas, excepto en directorios con el atributo \u00abchattr +F\u00bb;\n<li class=\"l\"> Se unificaron las funciones de manejo de caracteres UTF-8 en los nombres de archivos, que se aplican al realizar operaciones de comparaci\u00f3n y normalizaci\u00f3n de cadenas;\n<li class=\"l\"> En XFS se ha a\u00f1adido infraestructura para rastrear el estado del sistema de archivos y un nuevo ioctl para consultar el estado de funcionamiento. Se ha implementado una capacidad experimental para realizar verificaciones en l\u00ednea (online scrub) de los contadores de superblock.\n<li class=\"l\"> Se ha a\u00f1adido un nuevo m\u00f3dulo device-mapper \u00ab<noindex>dm-dust<\/noindex>\u00ab, que simula la aparici\u00f3n de bloques defectuosos en el medio o errores al leer desde el disco. El m\u00f3dulo facilita la depuraci\u00f3n y prueba de aplicaciones y varios sistemas de almacenamiento bajo condiciones de fallos potenciales;\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/784267\/\">Se ha realizado<\/a><\/noindex> optimizaci\u00f3n significativa del rendimiento del planificador de E\/S BFQ. En condiciones de alta carga de entrada\/salida, se han implementado optimizaciones. <noindex><a rel=\"nofollow\" href=\"https:\/\/algo.ing.unimo.it\/people\/paolo\/disk_sched\/results.php\">verificar el funcionamiento del dispositivo: prueban procesos de transici\u00f3n, pila de llamadas,<\/a><\/noindex> reducir hasta un 80% el tiempo de operaciones como el lanzamiento de aplicaciones;\n<li class=\"l\"> Se ha a\u00f1adido una serie de llamadas del sistema para montar sistemas de archivos: <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=24dcb3d90a1f67fe08c68a004af37df059d74005\">fsopen()<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=a07b20004793d8926f78d63eb5980559f7813404\">open_tree()<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=cf3cba4a429be43e5527a3f78859b1bfd9ebc5fb\">fspick()<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=93766fbd2696c2c4453dd8e1070977e9cd4e6b6d\">fsmount()<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=ecdab150fddb42fe6a739335257949220033b782\">fsconfig()<\/a><\/noindex> y <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=2db154b3ea8e14b04fee23e3fdfd5e9d17fbc6ae\">move_mount()<\/a><\/noindex>. Estas llamadas del sistema permiten procesar por separado diferentes etapas del montaje (procesar el superbloque, obtener informaci\u00f3n del sistema de archivos, montar, adjuntar a un punto de montaje), que anteriormente se realizaban mediante una llamada del sistema com\u00fan mount(). Las llamadas separadas permiten ejecutar escenarios de montaje m\u00e1s complejos y realizar operaciones como reconfigurar el superbloque, habilitar opciones, cambiar el punto de montaje y trasladar a otro espacio de nombres. Adem\u00e1s, el procesamiento separado permite identificar con precisi\u00f3n las causas de los c\u00f3digos de error y establecer m\u00faltiples or\u00edgenes para sistemas de archivos en capas, como overlayfs;\n<li class=\"l\"> Se ha a\u00f1adido una nueva operaci\u00f3n IORING_OP_SYNC_FILE_RANGE a la interfaz de entrada\/salida as\u00edncrona io_uring, que realiza acciones equivalentes a la llamada del sistema <noindex><a rel=\"nofollow\" href=\"http:\/\/man7.org\/linux\/man-pages\/man2\/sync_file_range.2.html\">sync_file_range()<\/a><\/noindex>, as\u00ed como la posibilidad de registrar eventfd con io_uring y recibir notificaciones sobre la finalizaci\u00f3n de operaciones;\n<li class=\"l\"> Para el sistema de archivos CIFS se ha a\u00f1adido el ioctl FIEMAP, que proporciona un mapeo eficiente de extensiones, as\u00ed como soporte para los modos SEEK_DATA y SEEK_HOLE;\n<li class=\"l\"> En el subsistema FUSE <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=ad2ba64dd489805e7ddf5fecf166cae1e09fc5c0\">se propone<\/a><\/noindex> API para gestionar la memoria cach\u00e9 de datos;\n<li class=\"l\"> Se ha optimizado la implementaci\u00f3n de qgroups en Btrfs y aumentado la velocidad de ejecuci\u00f3n de fsync para archivos con m\u00faltiples enlaces duros. Se ha mejorado el c\u00f3digo de verificaci\u00f3n de la integridad de los datos, que ahora tiene en cuenta posibles da\u00f1os en la informaci\u00f3n en la RAM antes de volcar los datos al disco;\n<li class=\"l\"> Se ha a\u00f1adido soporte para la exportaci\u00f3n de instant\u00e1neas a trav\u00e9s de NFS en CEPH;\n<li class=\"l\"> Se ha mejorado la implementaci\u00f3n de montaje NFSv4 en modo \u00absoft\u00bb (cuando se produce un error de acceso al servidor en modo \u00absoft\u00bb, la llamada devuelve inmediatamente un c\u00f3digo de error, mientras que en modo \u00abhard\u00bb el control no se libera hasta que se restablece la disponibilidad del sistema de archivos o expira el tiempo de espera). En esta nueva versi\u00f3n se ha proporcionado un manejo m\u00e1s preciso del tiempo de espera, acelerada la recuperaci\u00f3n tras fallos y se ha a\u00f1adido una nueva opci\u00f3n de montaje \u00absofterr\u00bb, que permite cambiar el c\u00f3digo de error (ETIMEDOUT) devuelto cuando se produce un tiempo de espera;\n<li class=\"l\"> En la API nfsdcld, destinada a rastrear el estado de los clientes de NFS, se ha habilitado la capacidad de monitorear correctamente el estado del cliente por parte del servidor NFS al reiniciar. De esta manera, el demonio nfsdcld ahora puede actuar como un controlador de nfsdcltrack;\n<li class=\"l\"> Para AFS <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=6c6c1d63c243025956f061e67fff3a615aa0f6be\">se ha a\u00f1adido<\/a><\/noindex> emulaci\u00f3n de bloqueos de rangos de bytes en archivos (<noindex><a rel=\"nofollow\" href=\"http:\/\/docs.openafs.org\/ReleaseNotesWindows\/ch03s19.html\">Bloqueo de Rangos de Bytes<\/a><\/noindex>);\n<\/ul>\n<li class=\"l\"> <b>Virtualizaci\u00f3n y seguridad<\/b>\n<ul>\n<li class=\"l\"> Se ha trabajado en la eliminaci\u00f3n de lugares en el n\u00facleo que permit\u00edan la ejecuci\u00f3n de c\u00f3digo desde \u00e1reas de memoria reflejadas de escritura, bloqueando as\u00ed posibles brechas que podr\u00edan ser explotadas en un ataque;\n<li class=\"l\"> Se ha a\u00f1adido un nuevo par\u00e1metro de l\u00ednea de comandos del n\u00facleo \u00abmitigations=\u00bb, que ofrece una forma simplificada de gestionar la activaci\u00f3n de ciertas t\u00e9cnicas de mitigaci\u00f3n contra vulnerabilidades relacionadas con la ejecuci\u00f3n especulativa de instrucciones en la CPU. Pasar \u00abmitigations=off\u00bb desactiva todos los m\u00e9todos disponibles, mientras que el modo predeterminado \u00abmitigations=auto\u00bb activa la protecci\u00f3n sin afectar el uso de Hyper Threading. El modo \u00abmitigations=auto,nosmt\u00bb tambi\u00e9n desactiva Hyper Threading si lo requiere el m\u00e9todo de protecci\u00f3n.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/0d7a78643f6972214e99205b364e508f8ea9598e\">Se ha a\u00f1adido<\/a><\/noindex> apoyo a la firma digital electr\u00f3nica seg\u00fan GOST R 34.10-2012 (RFC 7091, ISO\/IEC 14888-3), <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=0d7a78643f6972214e99205b364e508f8ea9598e\">desarrollada<\/a><\/noindex> Con Vitaly Chikunov de 'Bazalt SPO'. Se ha a\u00f1adido soporte para AES128-CCM en la implementaci\u00f3n integrada de TLS. Se ha incorporado soporte para algoritmos AEAD en el m\u00f3dulo crypto_simd;\n<li class=\"l\"> En Kconfig <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=9f671e58159adea641f76c56d1f0bbdcb3c524ff\">se ha a\u00f1adido<\/a><\/noindex> una secci\u00f3n independiente 'kernel hardening' con opciones para reforzar la protecci\u00f3n del n\u00facleo. Actualmente, en esta nueva secci\u00f3n solo se han recopilado configuraciones para habilitar comprobaciones de plugins de GCC;\n<li class=\"l\"> El c\u00f3digo del n\u00facleo est\u00e1 casi <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=b4b52b881cf0\">libre de<\/a><\/noindex> de expresiones ininterrumpidas case en switch (sin return ni break despu\u00e9s de cada bloque case). Quedan 32 de 2311 casos de este uso de switch por corregir, tras lo cual se podr\u00e1 aplicar el modo '-Wimplicit-fallthrough' al compilar el n\u00facleo;\n<li class=\"l\"> Se ha implementado soporte para mecanismos de hardware que limitan rutas de acceso no deseadas del n\u00facleo a datos en el espacio del usuario para la arquitectura PowerPC;\n<li class=\"l\"> Se ha a\u00f1adido c\u00f3digo para el bloqueo  <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=50684\">ataques?<\/a><\/noindex> clase MDS (Microarchitectural Data Sampling) en procesadores Intel. La exposici\u00f3n del sistema a la vulnerabilidad se puede verificar a trav\u00e9s de la variable SysFS '\/sys\/devices\/system\/cpu\/vulnerabilities\/mds'. <noindex><a rel=\"nofollow\" href=\"https:\/\/www.kernel.org\/doc\/html\/latest\/admin-guide\/hw-vuln\/mds.html\">Disponible<\/a><\/noindex> dos modos de protecci\u00f3n: completo, que requiere la presencia de microc\u00f3digo actualizado, y un modo alternativo, que no garantiza completamente la limpieza de los b\u00faferes de CPU al transferir el control al espacio de usuario o al sistema hu\u00e9sped. Se ha a\u00f1adido al n\u00facleo un par\u00e1metro de control de modos de protecci\u00f3n 'mds=', que puede aceptar los valores 'full', 'full,nosmt' (+ desactivaci\u00f3n de Hyper-Threads) y 'off';\n<li class=\"l\"> En sistemas x86-64 se ha a\u00f1adido protecci\u00f3n 'stack guard-page' para IRQ, mecanismos de depuraci\u00f3n y controladores de excepciones, cuya esencia consiste en la sustituci\u00f3n en el l\u00edmite con el stack de p\u00e1ginas de memoria, cuyo acceso genera una excepci\u00f3n (page-fault);\n<li class=\"l\"> Se ha a\u00f1adido la configuraci\u00f3n sysctl vm.unprivileged_userfaultfd, que controla la posibilidad de utilizar la llamada al sistema userfaultfd() por procesos no privilegiados;\n<\/ul>\n<li class=\"l\"> <b>Subsistema de red<\/b>\n<ul>\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=d15662682db232da77136cd348f4c9df312ca6f9\">Se ha a\u00f1adido<\/a><\/noindex> soporte para gateways IPv6 en rutas IPv4. Por ejemplo, ahora se pueden especificar reglas de enrutamiento del tipo 'ip ro add 172.16.1.0\/24 via inet6 2001:db8::1 dev eth0';\n<li class=\"l\"> Para ICMPv6 se han implementado llamadas ioctl icmp_echo_ignore_anycast e icmp_echo_ignore_multicast para ignorar ICMP ECHO para anycast y<br \/>\ndirecciones multicast. <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=0bc199854405543b0debe67c735c0aae94f1d319\">Se ha a\u00f1adido<\/a><\/noindex> posibilidad de limitar la intensidad del procesamiento de paquetes ICMPv6;<\/p>\n<li class=\"l\"> Para el protocolo mesh B.A.T.M.A.N. ('Better Approach To Mobile Adhoc Networking'), que permite crear redes descentralizadas, donde cada nodo est\u00e1 conectado a trav\u00e9s de nodos vecinos, <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/32e727449c792b689c2a06a8b4cc9fef6270c5a7\">se ha a\u00f1adido<\/a><\/noindex> soporte para la traducci\u00f3n de multicast a unicast, as\u00ed como la posibilidad de gesti\u00f3n a trav\u00e9s de sysfs;\n<li class=\"l\"> En ethtool <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=3aeb0803f7ea11ff2fc478f7d58f2b8e713af380\">se ha agregado<\/a><\/noindex> se ha a\u00f1adido el nuevo par\u00e1metro Fast Link Down, que permite reducir el tiempo de recepci\u00f3n de informaci\u00f3n sobre el evento de desconexi\u00f3n del enlace para 1000BaseT (en condiciones normales, la latencia puede ser de hasta 750 ms);\n<li class=\"l\"> Ahora hay <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/1713cb37bf671e5d98919536941a8b56337874fd\">la posibilidad<\/a><\/noindex> vinculaci\u00f3n de t\u00faneles Foo-Over-UDP a una direcci\u00f3n espec\u00edfica, interfaz de red o socket (anteriormente la vinculaci\u00f3n solo se realizaba por una m\u00e1scara general);\n<li class=\"l\"> En el stack inal\u00e1mbrico <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=cb74e9775871f8c82a1297cf76209f10ab5bbe3d\">se ha asegurado<\/a><\/noindex> la capacidad de implementar controladores<br \/>\nOWE (Opportunistic Wireless Encryption) en el espacio de usuario;<\/p>\n<li class=\"l\"> En Netfilter, se ha a\u00f1adido soporte para la familia de direcciones inet en las cadenas nat (por ejemplo, ahora se puede usar una sola regla de traducci\u00f3n para manejar ipv4 e ipv6, sin dividir las reglas para ipv4 e ipv6);\n<li class=\"l\"> En netlink <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=ef6243acb4782df587a4d7d6c310fa5b5d82684b\">se ha agregado<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=8cb081746c031fb164089322e2336a0bf5b3070c\">modo<\/a><\/noindex> estricto para una verificaci\u00f3n rigurosa de la correcci\u00f3n de todos los mensajes y atributos, en el que no se permite exceder el tama\u00f1o esperado de los atributos y se proh\u00edbe a\u00f1adir datos adicionales al final de los mensajes;\n<\/ul>\n<li class=\"l\"> <b>Memoria y servicios del sistema<\/b>\n<ul>\n<li class=\"l\"> se ha a\u00f1adido el flag CLONE_PIDFD al sistema de llamadas clone(), que al indicarlo devuelve al proceso padre un descriptor de archivo 'pidfd', asociado con el proceso hijo creado. Este descriptor de archivo, por ejemplo, se puede utilizar para enviar se\u00f1ales sin temor a encontrarse con una condici\u00f3n de carrera (justo despu\u00e9s de enviar la se\u00f1al, el PID objetivo puede ser liberado debido a la finalizaci\u00f3n del proceso y ser ocupado por otro proceso);\n<li class=\"l\"> Para la segunda versi\u00f3n de cgroups se ha a\u00f1adido la funcionalidad del controlador freezer, que permite detener la operaci\u00f3n en un cgroup y liberar temporalmente algunos recursos (CPU, entrada\/salida y potencialmente incluso memoria) para realizar otras tareas. La gesti\u00f3n se realiza a trav\u00e9s de los archivos de control cgroup.freeze y cgroup.events en el \u00e1rbol cgroup. Escribir 1 en cgroup.freeze congela los procesos en el cgroup actual y en todos los grupos secundarios. Dado que la congelaci\u00f3n requiere cierto tiempo, se ha propuesto adicionalmente el archivo cgroup.events a trav\u00e9s del cual se puede conocer la finalizaci\u00f3n de la operaci\u00f3n;\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=e1cf33aafb84\">Asegurado<\/a><\/noindex> la exportaci\u00f3n de atributos de memoria asociados a cada nodo en sysfs, lo que permite determinar desde el espacio de usuario la naturaleza del manejo de bancos de memoria en sistemas con memoria heterog\u00e9nea;\n<li class=\"l\"> Se ha mejorado el subsistema PSI (Pressure Stall Information), que permite analizar informaci\u00f3n sobre el tiempo de espera para obtener diversos recursos (CPU, memoria, entrada\/salida) para ciertas tareas o conjuntos de procesos en un cgroup. Con PSI, los manejadores en el espacio de usuario pueden evaluar m\u00e1s precisamente el nivel de carga del sistema y la naturaleza de la desaceleraci\u00f3n en comparaci\u00f3n con Load Average. En la nueva versi\u00f3n se ha a\u00f1adido soporte para la configuraci\u00f3n de umbrales de sensibilidad y la posibilidad de usar la llamada poll() para recibir notificaciones sobre la activaci\u00f3n de los umbrales establecidos durante un cierto per\u00edodo de tiempo. Esta capacidad permite organizar en Android el monitoreo de la falta de memoria en una etapa temprana, identificar la fuente de problemas y finalizar aplicaciones no importantes, evitando as\u00ed que surjan problemas perceptibles para el usuario. En las pruebas de estr\u00e9s, las herramientas de monitoreo del consumo de memoria basadas en PSI han demostrado tener 10 veces menos falsas alarmas en comparaci\u00f3n con las estad\u00edsticas de vmpressure;\n<li class=\"l\"> Se ha optimizado el c\u00f3digo para la verificaci\u00f3n de programas BPF, lo que permite que para programas grandes la verificaci\u00f3n se realice hasta 20 veces m\u00e1s r\u00e1pido. La optimizaci\u00f3n permiti\u00f3 aumentar el l\u00edmite del tama\u00f1o de los programas BPF de 4096 a un mill\u00f3n de instrucciones;\n<li class=\"l\"> Para programas BPF <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=d859900c4c56\">proporcionada<\/a><\/noindex> la posibilidad de acceso a datos globales, lo que permite definir variables y constantes globales dentro de los programas;\n<li class=\"l\"> Se a\u00f1adi\u00f3 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/torvalds\/linux\/blob\/master\/Documentation\/bpf\/prog_cgroup_sysctl.rst\">API<\/a><\/noindex>, permitiendo controlar desde programas BPF los cambios en los par\u00e1metros sysctl;\n<li class=\"l\"> Se ha implementado un compilador JIT para la m\u00e1quina virtual eBPF para la arquitectura MIPS32;\n<li class=\"l\"> Para la arquitectura PowerPC de 32 bits, se ha a\u00f1adido soporte para la herramienta de depuraci\u00f3n KASan (Kernel address sanitizer), que permite detectar errores en el manejo de la memoria;\n<li class=\"l\"> En sistemas x86-64 se ha eliminado la restricci\u00f3n sobre la ubicaci\u00f3n de los volcado de estado en caso de fallo del n\u00facleo (crash-dump) en \u00e1reas de memoria superiores a 896MB;\n<li class=\"l\"> Para la arquitectura s390 se ha implementado el soporte para la aleatorizaci\u00f3n del espacio de direcciones del n\u00facleo (KASLR) y la posibilidad de verificar firmas digitales al cargar el n\u00facleo a trav\u00e9s de kexec_file_load();\n<li class=\"l\"> Para la arquitectura PA-RISC se ha a\u00f1adido soporte para el depurador del n\u00facleo (KGDB), puntos de interrupci\u00f3n y kprobes;\n<\/ul>\n<li class=\"l\"> <b>Hardware<\/b>\n<ul>\n<li class=\"l\"> Se incluye el controlador <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=a1d2a6339961efc078208dc3b2f006e9e9a8e119\">Lima<\/a><\/noindex> para GPU Mali 400\/450, utilizado en muchos chips antiguos basados en la arquitectura ARM. Para GPUs Mali m\u00e1s recientes, se ha a\u00f1adido el controlador Panfrost, que soporta chips basados en las microarquitecturas Midgard (Mali-T6xx, Mali-T7xx, Mali-T8xx) y Bifrost (Mali G3x, G5x, G7x);\n<li class=\"l\"> Se ha a\u00f1adido soporte para dispositivos de sonido que utilizan firmware abierto <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=48266\">Sound Open Firmware<\/a><\/noindex> (<noindex><a rel=\"nofollow\" href=\"https:\/\/www.sofproject.org\/\">SOF<\/a><\/noindex>). A pesar de la disponibilidad de controladores abiertos, el c\u00f3digo de los firmwares para los chips de sonido segu\u00eda siendo cerrado y se proporcionaba en formato binario. El proyecto Sound Open Firmware fue desarrollado por Intel para crear firmwares abiertos para chips DSP relacionados con el procesamiento de sonido (posteriormente Google tambi\u00e9n se uni\u00f3 al desarrollo). En la actualidad, el proyecto ya ha preparado firmware abierto para chips de sonido en plataformas Intel Baytrail, CherryTrail, Broadwell, ApolloLake, GeminiLake, CannonLake e IceLake;\n<li class=\"l\"> En el controlador DRM de Intel (i915) se ha a\u00f1adido soporte para chips<br \/>\nElkhartlake (Gen11). Se han a\u00f1adido identificadores PCI para chips Comet Lake (Gen9). Se ha estabilizado el soporte para chips Icelake, para los cuales tambi\u00e9n se han a\u00f1adido identificadores PCI adicionales.<br \/>\n <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=d57b39e3ee3cdb4b00452090e386d197980cefc9\">Incorporado<\/a><\/noindex><br \/>\nmodo de conmutaci\u00f3n as\u00edncrona entre dos b\u00faferes en la memoria de video (async flip) durante las operaciones de escritura a trav\u00e9s de mmio, lo que permiti\u00f3 aumentar significativamente el rendimiento de algunas aplicaciones 3D (por ejemplo, el rendimiento en la prueba 3DMark Ice Storm aument\u00f3 entre un 300% y un 400%). Se a\u00f1adi\u00f3 soporte para la tecnolog\u00eda <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/HDCP\">HDCP2.2<\/a><\/noindex> (Protecci\u00f3n de Contenido Digital de Alto Ancho de Banda) para cifrar la se\u00f1al de video transmitida a trav\u00e9s de HDMI;<\/p>\n<li class=\"l\"> En el controlador amdgpu para GPU Vega20 <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=457109829f4ee4107e8c7108237afba21fabbb5e\">se ha a\u00f1adido<\/a><\/noindex>  soporte para RAS (Fiabilidad, Disponibilidad, Mantenibilidad) y apoyo experimental para el subsistema SMU 11, que reemplaza la tecnolog\u00eda Powerplay. Para GPU Vega12 <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=750cced1c08b5258202f29ed954513be8f38df1b\">se ha a\u00f1adido<\/a><\/noindex> soporte para el modo BACO (Bus Activo, Chip Apagado). Se agreg\u00f3 soporte inicial para XGMI, un bus de alta velocidad (PCIe 4.0) para la conexi\u00f3n de GPU. Se a\u00f1adieron identificadores faltantes para tarjetas basadas en GPU Polaris10 en el controlador amdkfd;\n<li class=\"l\"> En el controlador Nouveau se a\u00f1adi\u00f3 soporte para placas basadas en el chipset NVIDIA Turing 117 (TU117, utilizado en GeForce GTX 1650). En<br \/>\n kconfig <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=b30a43ac7132cdda833ac4b13dd1ebd35ace14b7\">se ha a\u00f1adido<\/a><\/noindex> configuraci\u00f3n para desactivar funciones obsoletas que ya no se utilizan en las versiones actuales de libdrm;<\/p>\n<li class=\"l\"> En la API DRM y el controlador amdgpu se ha a\u00f1adido soporte para objetos de sincronizaci\u00f3n 'timeline', que permiten prescindir de bloqueos cl\u00e1sicos.\n<li class=\"l\"> Del branch staging se ha incorporado el controlador vboxvideo para la GPU virtual VirtualBox;\n<li class=\"l\"> Se a\u00f1adi\u00f3 el controlador aspeed para el chip GFX de SoC ASPEED;\n<li class=\"l\"> Se a\u00f1adi\u00f3 soporte para ARM SoC y placas Intel Agilex (SoCFPGA), NXP i.MX8MM, Allwinner (RerVision H3-DVK (H3), Oceanic 5205 5inMFD, Beelink GS2 (H6), Orange Pi 3 (H6)), Rockchip (Orange Pi RK3399, Nanopi NEO4, Veyron-Mighty Chromebook), Amlogic: SEI Robotics SEI510,<br \/>\nST Micro (stm32mp157a, stm32mp157c), NXP (<br \/>\n    Eckelmann ci4x10 (i.MX6DL),<\/p>\n<p>    i.MX8MM EVK (i.MX8MM),<\/p>\n<p>    ZII i.MX7 RPU2 (i.MX7),<\/p>\n<p>    ZII SPB4 (VF610),<\/p>\n<p>    Zii Ultra (i.MX8M),<\/p>\n<p>    TQ TQMa7S (i.MX7Solo),<\/p>\n<p>    TQ TQMa7D (i.MX7Dual),<\/p>\n<p>    Kobo Aura (i.MX50),<\/p>\n<p>    Menlosystems M53 (i.MX53)), NVIDIA Jetson Nano (Tegra T210).<\/p>\n<\/ul>\n<\/ul>\n<p>Al mismo tiempo, la Fundaci\u00f3n Latinoamericana de Software Libre <noindex><a rel=\"nofollow\" href=\"http:\/\/www.fsfla.org\/ikiwiki\/selibre\/linux-libre\/\">form\u00f3<\/a><\/noindex><br \/>\nuna variante <noindex><a rel=\"nofollow\" href=\"http:\/\/www.fsfla.org\/ikiwiki\/selibre\/linux-libre\/\">n\u00facleo completamente libre 5.2<\/a><\/noindex> \u2014 <noindex><a rel=\"nofollow\" href=\"http:\/\/linux-libre.fsfla.org\/pub\/linux-libre\/releases\/5.2-gnu\/\">Linux-libre 5.2-gnu<\/a><\/noindex>, limpio de elementos de firmware y controladores que contienen componentes no libres o segmentos de c\u00f3digo, cuya \u00e1rea de aplicaci\u00f3n est\u00e1 limitada por el fabricante. En esta nueva versi\u00f3n se incluye la carga de archivos<br \/>\nSound Open Firmware. Se desactiv\u00f3 la carga de blobs en los controladores<br \/>\n mt7615, rtw88, rtw8822b, rtw8822c, btmtksdio, iqs5xx, ishtp y ucsi_ccg. Se actualiz\u00f3 el c\u00f3digo de limpieza de blobs en los controladores y subsistemas ixp4xx, imx-sdma, amdgpu, nouveau y goya, as\u00ed como en la documentaci\u00f3n del microc\u00f3digo. Se detuvo la limpieza de blobs en el controlador r8822be debido a su eliminaci\u00f3n.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Fuente: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=51051\">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.2. \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: \u0440\u0435\u0436\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u044b Ext4 \u0431\u0435\u0437 \u0443\u0447\u0451\u0442\u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432, \u0440\u0430\u0437\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u0432\u044b\u0437\u043e\u0432\u044b \u0434\u043b\u044f \u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0424\u0421, \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u044b \u0434\u043b\u044f GPU Mali 4xx\/ 6xx\/7xx, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 sysctl \u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430\u0445 BPF, device-mapper \u043c\u043e\u0434\u0443\u043b\u044c dm-dust, \u0437\u0430\u0449\u0438\u0442\u0430 \u043e\u0442 \u0430\u0442\u0430\u043a MDS, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 Sound Open Firmware \u0434\u043b\u044f DSP, [&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-35977","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.\" \/>\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-2\" \/>\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.2 | 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.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/es\/blog\/news\/reliz-yadra-linux-5-2\" \/>\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=\"2019-10-31T19:08:56+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:08:56+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.2 | ProHoster","description":"Despu\u00e9s de dos meses de desarrollo, Linus Torvalds present\u00f3 el lanzamiento del n\u00facleo Linux.","canonical_url":"https:\/\/prohoster.info\/es\/blog\/news\/reliz-yadra-linux-5-2","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.2 | 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.","og:url":"https:\/\/prohoster.info\/es\/blog\/news\/reliz-yadra-linux-5-2","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":"2019-10-31T19:08:56+00:00","article:modified_time":"2019-10-31T19:08:56+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"35977","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":null,"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-01-22 01:30:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:52:26","updated":"2026-01-22 01:30: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\/35977","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=35977"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/35977\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=35977"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=35977"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=35977"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}