{"id":67195,"date":"2026-08-29T20:02:22","date_gmt":"2026-08-29T20:02:22","guid":{"rendered":"https:\/\/overcentral.com\/es\/?p=67195"},"modified":"2026-08-29T20:02:22","modified_gmt":"2026-08-29T20:02:22","slug":"linus-torvalds-corrige-fallo-linux-ia-67195","status":"publish","type":"post","link":"https:\/\/overcentral.com\/es\/linus-torvalds-corrige-fallo-linux-ia-67195\/","title":{"rendered":"Linus Torvalds corrige fallo de Linux con IA en sesi\u00f3n infernal"},"content":{"rendered":"<p><a href=\"https:\/\/es.wikipedia.org\/wiki\/Linus_Torvalds\" target=\"_blank\" rel=\"noopener noreferrer\" data-iacss-external=\"1\">Linus Torvalds<\/a> no es un detractor absoluto de la inteligencia artificial, pero su escepticismo hacia la dependencia acr\u00edtica de esta tecnolog\u00eda en el desarrollo de software es bien conocido. El creador y mantenedor principal del <a href=\"https:\/\/www.kernel.org\/\" target=\"_blank\" rel=\"noopener noreferrer\" data-iacss-external=\"1\">kernel de Linux<\/a> ha manifestado en repetidas ocasiones que el uso indiscriminado de asistentes <a href=\"https:\/\/overcentral.com\/es\/virus-mental-agentes-ia-66748\/\" title=\"Virus mental infecta agentes de IA mediante archivos de memoria persistente\" data-iacss-internal=\"1\">de IA<\/a> puede entorpecer el desarrollo del n\u00facleo del sistema operativo, y ha pedido un enfoque m\u00e1s responsable. Sin embargo, en la pr\u00e1ctica, Torvalds no duda en emplear estas herramientas cuando la situaci\u00f3n lo requiere. El caso m\u00e1s reciente, documentado en la lista de correo del kernel y ampliamente reportado, ilustra esta dualidad: un error particularmente escurridizo en el controlador gr\u00e1fico de <a href=\"https:\/\/www.intel.com\/\" target=\"_blank\" rel=\"sponsored noopener noreferrer\" data-iacss-external=\"1\">Intel<\/a> para Linux fue resuelto tras una agotadora sesi\u00f3n de depuraci\u00f3n en la que la inteligencia artificial fue tanto un apoyo como un obst\u00e1culo. El resultado final fue un parche que corrige un comportamiento cr\u00edtico, pero el camino para llegar hasta \u00e9l dej\u00f3 lecciones importantes sobre las capacidades y las limitaciones actuales de los grandes modelos de lenguaje en tareas de ingenier\u00eda de software de alto nivel.<\/p>\n<h2>El fallo en el controlador Xe de Intel: un error de redondeo con consecuencias cr\u00edticas<\/h2>\n<p>El problema se origin\u00f3 en el controlador Xe, el driver encargado de gestionar el funcionamiento de las GPUs de Intel dentro del kernel de Linux. Este controlador, relativamente nuevo en el ecosistema, maneja la comunicaci\u00f3n entre el sistema operativo y las unidades de procesamiento gr\u00e1fico, incluyendo aspectos cr\u00edticos como la gesti\u00f3n de memoria y las tablas de p\u00e1ginas de la GPU. Torvalds detect\u00f3 que la direcci\u00f3n de memoria reservada para el almacenamiento CCS (un \u00e1rea espec\u00edfica de la memoria gr\u00e1fica) se redondeaba hacia arriba cuando, por su naturaleza, deb\u00eda hacerlo hacia abajo. Este error de redondeo, aparentemente menor, desencadenaba una reacci\u00f3n en cadena: el controlador terminaba utilizando una zona de memoria que no respetaba los l\u00edmites establecidos para el almacenamiento CCS, y cuando esa memoria mal calculada coincid\u00eda con las tablas de p\u00e1ginas de la GPU, el resultado era catastr\u00f3fico para la estabilidad del sistema.<\/p>\n<p>En sus propias palabras, publicadas en la lista de correo del kernel, Torvalds explic\u00f3 que este comportamiento era la causa de casos de corrupci\u00f3n aleatoria en pantalla. En situaciones menos cr\u00edticas, el da\u00f1o se limitaba a corromper mapas de bits u otros datos temporales sin llegar a bloquear el ordenador. Sin embargo, cuando el error afectaba a zonas m\u00e1s sensibles, pod\u00eda provocar bloqueos completos del sistema o fallos de visualizaci\u00f3n que hac\u00edan imposible el uso normal del equipo. Lo dif\u00edcil de diagnosticar este tipo de fallos es que no siempre se manifiestan de manera predecible; dependen de c\u00f3mo se alineen los accesos a memoria en cada ejecuci\u00f3n, lo que convierte la depuraci\u00f3n en un proceso largo y frustrante.<\/p>\n<h3>Por qu\u00e9 el redondeo incorrecto es tan da\u00f1ino en controladores gr\u00e1ficos<\/h3>\n<p>En los controladores de GPU, la asignaci\u00f3n de memoria debe ser precisa para evitar conflictos con las tablas de p\u00e1ginas, que son las estructuras de datos que traducen direcciones virtuales a f\u00edsicas tanto para la CPU como para la GPU. Un redondeo hacia arriba en la direcci\u00f3n base de un buffer puede hacer que el controlador crea que dispone de m\u00e1s espacio del realmente asignado, invadiendo regiones de memoria reservadas para otras estructuras cr\u00edticas. Cuando la GPU accede a esas zonas, puede leer o escribir datos corruptos, manifest\u00e1ndose como artefactos visuales, p\u00edxeles aleatorios o fallos de p\u00e1gina que el kernel no sabe c\u00f3mo manejar. El fallo en el controlador Xe era exactamente este tipo de problema: una peque\u00f1a imprecisi\u00f3n en una funci\u00f3n matem\u00e1tica generaba inestabilidad en todo el subsistema gr\u00e1fico.<\/p>\n<h2>24 parches y 18 arranques: la sesi\u00f3n de depuraci\u00f3n infernal de Torvalds<\/h2>\n<p>Localizar la causa ra\u00edz de este error no fue sencillo. Torvalds revel\u00f3 que requiri\u00f3 m\u00e1s de 24 parches sucesivos para a\u00f1adir informaci\u00f3n de depuraci\u00f3n al c\u00f3digo, y fue necesario realizar 18 arranques completos del kernel antes de poder aislar la causa exacta del problema. Cada parche a\u00f1ad\u00eda nuevas trazas de depuraci\u00f3n, puntos de control y registros que permitieran seguir el rastro de la memoria desde su asignaci\u00f3n hasta su uso por parte de la GPU. Este proceso, que el propio Torvalds calific\u00f3 como \u00abuna sesi\u00f3n de depuraci\u00f3n infernal\u00bb, implic\u00f3 horas de an\u00e1lisis, reinicios constantes y la revisi\u00f3n meticulosa de cada salida de log.<\/p>\n<p>En este contexto, Torvalds decidi\u00f3 recurrir a un asistente de inteligencia artificial para que le ayudara a generar c\u00f3digo de depuraci\u00f3n y analizar los resultados. No se ha especificado qu\u00e9 modelo o herramienta utiliz\u00f3 exactamente, pero por el contexto y las descripciones, se trataba de un asistente basado en un gran modelo de lenguaje (LLM) entrenado para programaci\u00f3n. La idea era que la IA pudiera generar nuevas versiones de los parches de depuraci\u00f3n m\u00e1s r\u00e1pido de lo que Torvalds pod\u00eda escribirlos manualmente, y que adem\u00e1s pudiera ayudar a interpretar los patrones en los datos recogidos. En teor\u00eda, era una estrategia coherente: delegar las tareas repetitivas y mec\u00e1nicas en la m\u00e1quina para que el humano se centrara en el razonamiento de alto nivel.<\/p>\n<h3>C\u00f3mo la IA intent\u00f3 rendirse y por qu\u00e9 Torvalds no la dej\u00f3<\/h3>\n<p>Sin embargo, la colaboraci\u00f3n no fue fluida. De acuerdo con Torvalds, el asistente de inteligencia artificial se convirti\u00f3 en un lastre casi desde el principio. La IA lleg\u00f3 a afirmar en varias ocasiones que el problema era imposible de resolver y que lo mejor ser\u00eda limitarse a documentar el fallo en un informe sin intentar corregirlo. Esta actitud, que refleja una cierta \u00abpereza\u00bb o falta de tenacidad en los modelos actuales, no encajaba con la personalidad de Torvalds, conocido por su perseverancia cuando se enfrenta a un bug. \u00abSospecho que esas cosas han sido entrenadas por personas que tal vez no sean tan tercas como yo\u00bb, coment\u00f3 Linus en la lista de correo, en un tono que mezcla humor y cr\u00edtica.<\/p>\n<p>En lugar de aceptar la conclusi\u00f3n de la IA, Torvalds sigui\u00f3 presionando al sistema para que analizara el c\u00f3digo y generara m\u00e1s informaci\u00f3n de depuraci\u00f3n. La persistencia termin\u00f3 dando resultado. Aunque la IA se mostr\u00f3 dispuesta a rendirse en distintos momentos, sigui\u00f3 generando c\u00f3digo de depuraci\u00f3n adicional y analiz\u00e1ndolo con rigor bajo las instrucciones de Torvalds. Finalmente, despu\u00e9s de m\u00faltiples iteraciones, la combinaci\u00f3n de la experiencia humana y la capacidad de generaci\u00f3n autom\u00e1tica de la IA permiti\u00f3 identificar el error: una funci\u00f3n que redondeaba incorrectamente la direcci\u00f3n de memoria CCS. Como reconocimiento al trabajo del asistente, Torvalds dej\u00f3 que el propio sistema redactara el mensaje del commit final que corrige el fallo en el repositorio del kernel.<\/p>\n<h2>La IA afirm\u00f3 que el problema de Linux no ten\u00eda soluci\u00f3n: cr\u00f3nica de una rendici\u00f3n que no fue aceptada<\/h2>\n<p>Uno de los momentos m\u00e1s reveladores de todo el proceso fue cuando la inteligencia artificial, tras analizar el c\u00f3digo y las trazas disponibles, concluy\u00f3 que el fallo no ten\u00eda soluci\u00f3n pr\u00e1ctica. Esta afirmaci\u00f3n, que podr\u00eda haber desanimado a cualquier desarrollador, fue recibida por Torvalds como un desaf\u00edo. No se trataba de que la IA estuviera t\u00e9cnicamente equivocada en su an\u00e1lisis; es posible que, con los datos disponibles hasta ese momento, la ruta de soluci\u00f3n no fuera evidente. Pero la IA no estaba entrenada para \u00abno rendirse\u00bb. Los modelos de lenguaje actuales tienden a optimizar para respuestas que parezcan razonables y completas, y en ausencia de informaci\u00f3n suficiente, pueden inclinarse hacia conclusiones negativas en lugar de explorar hip\u00f3tesis alternativas.<\/p>\n<p>Este episodio pone de manifiesto una de las limitaciones fundamentales de la IA generativa en tareas de ingenier\u00eda: la falta de tenacidad y de capacidad de razonamiento exploratorio. Un humano con experiencia, especialmente alguien con la determinaci\u00f3n de Torvalds, sabe que un bug aparentemente imposible puede tener una causa trivial que se oculta tras una combinaci\u00f3n de condiciones dif\u00edciles de replicar. La IA, por su naturaleza estad\u00edstica, tiende a dar respuestas basadas en patrones previos y puede \u00abrendirse\u00bb cuando esos patrones no encajan bien, porque no tiene una verdadera comprensi\u00f3n del sistema subyacente ni una voluntad de seguir buscando.<\/p>\n<h3>\u00bfQu\u00e9 dice esto sobre los asistentes de IA para programaci\u00f3n?<\/h3>\n<p>El caso de Torvalds no es aislado. Muchos desarrolladores han reportado que los asistentes de c\u00f3digo basados en LLM pueden ser \u00fatiles para tareas rutinarias, pero fallan cuando se enfrentan a problemas novedosos o que requieren un razonamiento profundo sobre el comportamiento del sistema. La IA puede generar c\u00f3digo de depuraci\u00f3n r\u00e1pidamente, pero no puede \u00abpensar\u00bb como un ingeniero experimentado que conoce cada rinc\u00f3n del kernel. La lecci\u00f3n es clara: estas herramientas deben usarse como amplificadores de la productividad humana, no como sustitutos del juicio cr\u00edtico. Torvalds lo demostr\u00f3 al no aceptar la primera respuesta de la IA y seguir empujando hasta obtener resultados \u00fatiles.<\/p>\n<h2>El rol de la IA en el desarrollo del kernel: entre la utilidad y la dependencia excesiva<\/h2>\n<p>Este episodio se inscribe en un debate m\u00e1s amplio sobre el papel de la inteligencia artificial en el desarrollo del kernel de Linux. Hace varios meses, Torvalds ya hab\u00eda criticado p\u00fablicamente el uso excesivo de asistentes de c\u00f3digo por parte de programadores j\u00f3venes, se\u00f1alando que generaban parches de baja calidad que los mantenedores ten\u00edan que revisar y corregir. En sus propias palabras, \u00abla IA entorpece el desarrollo del kernel\u00bb cuando se utiliza de manera irresponsable, porque inunda las listas de correo con c\u00f3digo mal escrito o mal contextualizado. Sin embargo, Torvalds tambi\u00e9n ha dejado claro que no est\u00e1 en contra de la tecnolog\u00eda en s\u00ed misma, sino del mal uso que se hace de ella.<\/p>\n<p>En este caso concreto, la IA demostr\u00f3 ser una herramienta \u00fatil, aunque imperfecta. Ayud\u00f3 a generar r\u00e1pidamente m\u00faltiples versiones de parches de depuraci\u00f3n, algo que manualmente habr\u00eda llevado mucho m\u00e1s tiempo. Tambi\u00e9n permiti\u00f3 documentar el proceso de manera m\u00e1s eficiente. Pero sus limitaciones quedaron expuestas: necesit\u00f3 direcci\u00f3n constante por parte de un humano que entend\u00eda el problema a un nivel profundo. Sin la insistencia de Torvalds, la IA habr\u00eda abandonado y el bug podr\u00eda haber permanecido sin resolver, documentado como un fallo conocido pero sin correcci\u00f3n.<\/p>\n<h3>La postura de Torvalds: no obliga a usar IA, pero tampoco tolerar\u00e1 que se proh\u00edba<\/h3>\n<p>En sus comentarios p\u00fablicos tras la resoluci\u00f3n del fallo, Torvalds fue claro: \u00abNo estoy obligando a nadie a usar la IA, pero advierto que ignorar\u00e9 a aquellos que intenten evitar que otros la usen\u00bb. Esta declaraci\u00f3n refleja una posici\u00f3n pragm\u00e1tica: la IA es una herramienta m\u00e1s en el arsenal del desarrollador, y cada equipo debe decidir c\u00f3mo y cu\u00e1ndo emplearla. Lo que Torvalds rechaza es tanto la dependencia acr\u00edtica como el veto ideol\u00f3gico. Para \u00e9l, lo importante es que la herramienta ayude a los mantenedores \u2014personas que revisan y aceptan parches\u2014 en lugar de causarles m\u00e1s trabajo.<\/p>\n<p>Esta visi\u00f3n es especialmente relevante en el contexto del kernel de Linux, donde cientos de mantenedores voluntarios gestionan parches de miles de colaboradores. Si la IA genera c\u00f3digo que parece plausible pero contiene errores sutiles, los mantenedores pierden tiempo revis\u00e1ndolo. Si, por el contrario, la IA ayuda a generar parches correctos y depuraci\u00f3n de manera r\u00e1pida, entonces es una ganancia neta para el proyecto. El equilibrio es delicado, y Torvalds sugiere que la soluci\u00f3n no es prohibir las herramientas, sino educar a los desarrolladores para que las usen con criterio.<\/p>\n<h2>C\u00f3mo el controlador Xe y este fallo ilustran la complejidad del kernel moderno<\/h2>\n<p>El controlador Xe es relativamente nuevo en el kernel de Linux; fue introducido para dar soporte a las GPUs m\u00e1s recientes de Intel con una arquitectura modular. Su desarrollo ha sido objeto de atenci\u00f3n porque busca reemplazar gradualmente al controlador i915, que ha sido el est\u00e1ndar durante a\u00f1os. La aparici\u00f3n de bugs como este no es sorprendente en un software tan complejo, pero s\u00ed ilustra la dificultad de mantener la calidad en un ecosistema que evoluciona r\u00e1pidamente. Cada nueva generaci\u00f3n de hardware trae consigo cambios en la gesti\u00f3n de memoria, las tablas de p\u00e1ginas y los modos de ahorro de energ\u00eda, lo que multiplica las posibilidades de error.<\/p>\n<p>El fallo de redondeo en la direcci\u00f3n CCS es un ejemplo cl\u00e1sico de c\u00f3mo un error matem\u00e1tico aparentemente menor puede tener consecuencias graves en un sistema que opera cerca del hardware. En los controladores de GPU, la memoria se gestiona a nivel de p\u00e1ginas, y cualquier desalineaci\u00f3n puede corromper datos cr\u00edticos. La soluci\u00f3n final, seg\u00fan el commit redactado por la IA, fue cambiar la funci\u00f3n de redondeo para que se comporte correctamente en este caso concreto. Es una correcci\u00f3n peque\u00f1a en t\u00e9rminos de c\u00f3digo, pero el esfuerzo necesario para llegar a ella fue enorme.<\/p>\n<h2>Lecciones para la comunidad: c\u00f3mo usar la IA sin rendirse ante sus limitaciones<\/h2>\n<p>La experiencia de Torvalds ofrece varias lecciones pr\u00e1cticas para desarrolladores que quieran integrar asistentes de IA en su flujo de trabajo:<\/p>\n<ul>\n<li><strong>No aceptar la primera respuesta de la IA:<\/strong> Los modelos de lenguaje tienden a dar respuestas que parecen plausibles, pero pueden ser incorrectas o incompletas. Es obligaci\u00f3n del desarrollador cuestionar y verificar lo que genera la IA, especialmente cuando se enfrenta a problemas complejos.<\/li>\n<li><strong>Usar la IA para tareas mec\u00e1nicas, no para razonamiento estrat\u00e9gico:<\/strong> La IA es excelente para generar c\u00f3digo repetitivo, a\u00f1adir trazas de depuraci\u00f3n o reformatear estructuras de datos, pero no debe ser la encargada de decidir si un bug tiene soluci\u00f3n o no. Ese juicio debe ser humano.<\/li>\n<li><strong>Entrenar a la IA con el contexto adecuado:<\/strong> Torvalds aliment\u00f3 constantemente a la IA con nueva informaci\u00f3n de depuraci\u00f3n, gui\u00e1ndola hacia el patr\u00f3n correcto. Sin ese input continuo, la IA nunca habr\u00eda dado con la soluci\u00f3n.<\/li>\n<li><strong>Ser terco:<\/strong> La voluntad de no rendirse es un factor diferencial. La IA puede rendirse, pero el desarrollador humano puede insistir y obtener resultados que la m\u00e1quina no previ\u00f3.<\/li>\n<\/ul>\n<p>Estas lecciones no son solo para programadores del kernel; aplican a cualquier disciplina donde se utilicen modelos de lenguaje para tareas t\u00e9cnicas. La inteligencia artificial actual es una herramienta poderosa, pero todav\u00eda carece de la perseverancia y el pensamiento contextual que caracteriza a los mejores ingenieros.<\/p>\n<h2>\u00bfPodr\u00eda la IA haber resuelto el problema por s\u00ed sola sin la direcci\u00f3n humana?<\/h2>\n<p>Una pregunta que surge naturalmente es si, en un futuro cercano, los modelos de IA podr\u00e1n resolver bugs complejos sin intervenci\u00f3n humana. Basado en este caso, la respuesta parece ser negativa a corto plazo. La IA fue incapaz de encontrar la soluci\u00f3n por s\u00ed misma; de hecho, propuso abandonar. Necesit\u00f3 la direcci\u00f3n expl\u00edcita de un experto para seguir explorando. Para que una IA pudiera igualar la tenacidad de un Torvalds, necesitar\u00eda no solo m\u00e1s datos de entrenamiento, sino tambi\u00e9n un cambio fundamental en su arquitectura que le permita mantener objetivos a largo plazo contra la incertidumbre.<\/p>\n<p>Sin embargo, el hecho de que la IA redactara el commit final es un indicio de su utilidad. Una vez que el humano identific\u00f3 la soluci\u00f3n, la m\u00e1quina fue capaz de formatearla adecuadamente. Es probable que en el futuro veamos asistentes que puedan automatizar a\u00fan m\u00e1s las tareas de depuraci\u00f3n, pero el juicio cr\u00edtico y la capacidad de no rendirse seguir\u00e1n siendo competencias humanas esenciales durante mucho tiempo.<\/p>\n<p>El caso del fallo en el controlador Xe no cambiar\u00e1 el mundo del desarrollo de software por s\u00ed mismo, pero s\u00ed ofrece una instant\u00e1nea valiosa de la relaci\u00f3n entre humanos y m\u00e1quinas en la ingenier\u00eda de sistemas complejos. Linus Torvalds, con su estilo directo y su exigencia implacable, ha demostrado que la IA puede ser una aliada si se la usa con criterio, pero tambi\u00e9n ha dejado claro que la \u00faltima palabra \u2014y la \u00faltima terquedad\u2014 sigue siendo humana. El bug est\u00e1 corregido, el kernel es un poco m\u00e1s estable, y la comunidad tiene una historia m\u00e1s que contar sobre el d\u00eda en que la inteligencia artificial quiso rendirse pero su usuario no la dej\u00f3.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Linus Torvalds no es un detractor absoluto de la inteligencia artificial, pero su escepticismo hacia la dependencia acr\u00edtica de esta tecnolog\u00eda en el desarrollo de software es bien conocido. El creador y mantenedor principal del kernel de Linux ha manifestado en repetidas ocasiones que el uso indiscriminado de asistentes de IA puede entorpecer el desarrollo [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":67198,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"https:\/\/pub-4d4fc17555de4152be07eaf2a416a31e.r2.dev\/es\/ocie_1788033758081.jpg","fifu_image_alt":"Linus Torvalds corrige fallo de Linux con IA en sesi\u00f3n infernal","footnotes":""},"categories":[1],"tags":[],"class_list":["post-67195","post","type-post","status-publish","format-standard","has-post-thumbnail","category-blog"],"fifu_image_url":"https:\/\/pub-4d4fc17555de4152be07eaf2a416a31e.r2.dev\/es\/ocie_1788033758081.jpg","fifu_image_alt":"Linus Torvalds corrige fallo de Linux con IA en sesi\u00f3n infernal","_links":{"self":[{"href":"https:\/\/overcentral.com\/es\/wp-json\/wp\/v2\/posts\/67195","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/overcentral.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/overcentral.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/overcentral.com\/es\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/overcentral.com\/es\/wp-json\/wp\/v2\/comments?post=67195"}],"version-history":[{"count":2,"href":"https:\/\/overcentral.com\/es\/wp-json\/wp\/v2\/posts\/67195\/revisions"}],"predecessor-version":[{"id":67197,"href":"https:\/\/overcentral.com\/es\/wp-json\/wp\/v2\/posts\/67195\/revisions\/67197"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/overcentral.com\/es\/wp-json\/wp\/v2\/media\/67198"}],"wp:attachment":[{"href":"https:\/\/overcentral.com\/es\/wp-json\/wp\/v2\/media?parent=67195"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/overcentral.com\/es\/wp-json\/wp\/v2\/categories?post=67195"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/overcentral.com\/es\/wp-json\/wp\/v2\/tags?post=67195"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}