Linus Torvalds enfurecido con el uso de este código de Linux: “La asquerosa porquería, esto tiene que *morir*”

Generado con IA

Linux 6.15-rc1 se ha vuelto un dolor de cabeza por un código que es una “basura”. Genera archivos temporales similares a los de Windows, pero sin eliminarse automáticamente.

Después de haberse olvidado de publicar la versión 6.14 de Linux el pasado domingo, el líder del sistema operativo del Pingüino Tux se enfrenta a un nuevo desafío. No se trata de algo relacionado con la nueva evolución de Canonical en la distribución Ubuntu, sino de un problema muy molesto.

Sí, una de las actualizaciones le está dando errores y gira alrededor de un problema que acumula archivos de manera innecesaria mediante un código de prueba que, según Linus Torvalds, no debería ni existir.

Además, el inconveniente mencionado podría afectar la eficiencia de las compilaciones porque hace el proceso más tedioso, lo cual podría influir en la productividad de los programadores. Es momento de decirle adiós a esta característica de la mejor alternativa a Windows que hay hasta ahora, o podrías sufrir las consecuencias.

Se recomienda eliminar ya mismo el código “hdrtest” en Linux

Microsoft cuenta con archivos temporales en Windows, los cuales se eliminan automáticamente con el tiempo e incluso el mismo usuario puede deshacerse de ellos de manera manual. Pues bien, lo que sucede con la reciente versión 6.15-rc1 del SO de Linus Torvalds es que causa un problema con archivos llamados “turds” que solo se vuelven basura acumulativa

El creador ha criticado fuertemente el código “hdrtest” que ocasiones este inconveniente en la mencionada actualización porque los elementos son generados en los directorios de inclusión que solo ensucian el árbol de código fuente.

“Ya se han quejado por separado sobre esto. Nunca debería haberme llegado de esta forma tan defectuosa”, es lo que ha comentado en una publicación oficial, donde explica que se ha convertido en un problema bastante molesto.

No solamente pasa esto, sino que también hace que haya una relentización de compilaciones al no ser una herramienta opcional. Es decir, el código en cuestión se ejecuta de manera automática, haciendo que pase por la prueba que muestra todo el proceso y haciendo que el proceso tarde más de lo que debería.

“No añadimos archivos de turds aleatorios para las dependencias que luego ensucian el árbol de código fuente. Lo que me hizo darme cuenta de que seguía ahí fue que ‘git status’ se queja de que los estúpidos turds no se ignoran. Pero lo más importante, ¡esos turds también rompen el autocompletado de nombres de archivo! Así que no, añadirlo a gitignore no soluciona el problema, simplemente habría hecho que no me diera cuenta tan rápido”. — Linus Torvalds.

A pesar de que “hdrtest” se encarga de comprobar internamente el funcionamiento de los headers en el subsistema del Direct Rendering Manager (DRM), el rey pingüino afirma que “Esto tiene que *morir*”, pues lo ha calificado como “ROTO” y al enterarse de que no funcionaba como debería, lo ha desactivado.

Torvalds no critica la existencia de esta herramienta, sino la mala implementación, ya que no debería ser integrada como una estandarización por la que todos los usuarios deben pasar al realizar sus proyectos.

En realidad, menciona que la solución es que se mantenga como una opción manual para cuando se necesite y así evitar que “todos los demás vean esa cosa asquerosa” porque solo genera los problemas mencionados. 

¿Qué se debe usar en vez de este conjunto de pruebas?

Este nuevo “hdrtest” está pensado para el controlador del kernel de Intel Xe y se encarga de comprobar parte del DRM. Sin embargo, en este punto puede que te preguntes por qué el mismo creador está molesto con este cambio. 

La cuestión es que, por su lado, no ha agregado este código, ya que ha sido incorporado dentro de una solicitud de incorporación (pull request) que se recibe de otro equipo de desarrollo especializado en el subsistema del kernel de los controladores gráficos.

En sí, Torvalds recibe todos los cambios y decide si se quedan o se eliminan, pero el “hdrtest” lo ha tomado por sorpresa al enterarse de cómo es que funciona en realidad tras ejecutar “git status”. Según lo que recomienda, no se debe incluir en “la configuración de Kconfig ni en la compilación normal”.

Para evitar este tipo de inconvenientes, lo ideal es que se utilice como el código “make drm-hdrtest”, es decir, que se ejecute de manera independiente cuando lo requieras. De igual manera, esto no debería afectar a las distribuciones de Linux, pues son versiones de pruebas y desarrollo, así que cuando llegue la 6.15 oficial, esto ya debería haber sido solucionado.

Otros artículos interesantes: