Desde Linux Darkcrizt  

Controversia en torno a la autoría del código Rust para DRM en el kernel Linux

Problemas Rust For Linux

En estos últimos meses, la comunidad del kernel de Linux ha sido testigo de una tensa disputa que se ha generado sobre la inclusión de Rust en el Kernel, donde varios desarrolladores han salido a expresar su opinión y frustraciones.

Y es que a pesar de que Linus Torvalds haya salido a calmar las cosas, los problemas aún continúan, ya que ahora se presenta una problemática sobre el reconocimiento de autoría en un conjunto de parches diseñados para permitir la escritura de controladores gráficos en Rust a través del subsistema DRM.

La actual controversia gira en torno a la contribución de Lina Asahi, reconocida por su trabajo en el controlador drm-asahi para GPUs Apple AGX, y Danilo Krummrich, mantenedor del controlador Nouveau.

Todo comenzó cuando Danilo presentó un conjunto de parches para incluir en el kernel, basándose en gran medida en el trabajo previamente desarrollado por Lina. En su anuncio, Krummrich reconoció la labor de Lina, destacando que los cambios se habían inspirado en su implementación original, aunque atribuyó la autoría principal de los nuevos parches a sí mismo. Lina, por su parte, expresó su molestia por el hecho de que su papel fuera reducido a una simple mención como “co-desarrolladora”, cuando en realidad, afirmaba haber escrito la mayor parte del código base.

Me pregunto por qué asumiste la autoría principal de algunos parches. Para
Por ejemplo, el parche n.° 3 lo tiene como autor principal y, sin embargo, cuando hago una comparación…

Estos dos árboles tienen mi confirmación original y sus confirmaciones, tal como fueron rebasadas)
encima de la ciudad de Janne).

De esas 41 líneas añadidas, la mayoría son comentarios y reelaboración del Registro.

Pensé que la etiqueta general del kernel es que se mantenga el autor original.
a menos que estés literalmente reescribiendo la mayor parte del archivo desde cero…

El ejemplo más citado fue el archivo drm/drv.rs, con 321 líneas, de las cuales 280 habían sido escritas por Lina. Las modificaciones restantes, según ella, eran principalmente comentarios o cambios triviales. Desde su punto de vista, el código no había sido reescrito de forma sustancial, por lo que consideraba que debía figurar como autora principal, no como coautora.

Danilo respondió señalando que el código había sido reestructurado, ya que lo habia dividido en múltiples archivos y ajustado en varias secciones, y que esto justificaba que los nuevos parches llevaran su nombre. Además, explicó que Lina le había dado permiso explícito para usar su código libremente, aunque en ningún momento se discutió cómo se gestionaría la autoría. Aun así, aseguró que estaba dispuesto a corregir cualquier mención si Lina indicaba de forma concreta en qué parches debía figurar como autora principal.

Por ejemplo, el parche al que haces referencia a continuación (commit 242ae06b5ec9 («rust:
drm: Agregar abstracciones de dispositivo y controlador»)) se ha dividido en tres diferentes
parches, donde uno de ellos (parche n.° 2) en esta serie tiene de hecho prácticamente lo mismo
código, los otros dos (#3 y #4) fueron modificados.

Sin embargo, para Lina, ese ofrecimiento resultó insuficiente. Afirmó que dar permiso para utilizar el código no significaba renunciar al reconocimiento legítimo de su trabajo. La situación fue escalando cuando Lina acusó a Danilo de robarle el crédito y de minimizar su contribución en un proyecto al que había dedicado años de desarrollo.

En un intento por clarificar la magnitud de sus aportes, Danilo publicó una lista de cambios realizados (un diff de 1462 líneas), defendiendo que su trabajo iba más allá de simples anotaciones. Aun así, volvió a expresar su disposición para añadir a Lina como autora principal en los parches que ella considerara. Pero Lina, decepcionada, decidió retirar su atribución por completo y solicitó que se eliminara su nombre, liberando su código bajo una licencia CC-0, es decir, dominio público.

Ante el creciente conflicto, intervino Dave Airlie, mantenedor del subsistema DRM, quien zanjó la discusión afirmando que la autoría original de Lina se mantendría en cualquier parche que incluyera partes de su código, sin alimentar más el drama.

Posteriormente, Lina revisó los cambios presentados por Danilo y concluyó que más del 50% del nuevo código procedía directamente de sus parches anteriores. Si se excluyen los comentarios, estimó que su contribución real era de al menos un 75%. Solicitó, entonces, figurar como autora principal en los parches 3 al 7, si es que los mantenedores no iban a eliminar completamente su nombre.

Pero esto no termina aquí, ya que a finales de marzo, Lina ya había anunciado una pausa indefinida en su participación en el desarrollo del controlador Asahi, señalando que no se sentía segura trabajando. Un mes antes, en febrero, Héctor Martín, líder del proyecto Asahi Linux, también renunciaba y abandonaba el mantenimiento de la plataforma ARM/Apple en el kernel, alegando un ambiente hostil hacia la integración de Rust en el desarrollo del kernel.

La figura de Lina Asahi, de hecho, ha sido objeto de especulaciones. Algunos creen que podría ser una identidad virtual creada por el propio Héctor Martín. No hay pruebas directas, pero sí pistas: Lina nunca ha aparecido en eventos públicos ni transmisiones en vivo como persona real, sino que utiliza un avatar animado. Además, en algunas transmisiones se han captado detalles como el nombre de su equipo («raider») y rutas de usuario que coinciden con los usados por Héctor, cuyo apodo en línea es precisamente «marcan».

Leave A Comment

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.