Danilo Krummrich, uno degli accompagnatori del driver Nouveau, ha preparato per l'inclusione nel kernel Linux un insieme di patch con l'implementazione di wrapper sopra il sottosistema DRM (Direct Rendering Manager), che consentono di creare driver grafici in linguaggio Rust. Nella nota, Danilo ha menzionato che come base delle modifiche proposte sono stati utilizzati i lavori di Lina Asahi, che ha sviluppato il driver drm-asahi per le GPU Apple AGX, utilizzate nella serie di chip Apple Silicon. Lina, che ha creato la prima versione dell'insieme di patch pubblicato, è stata contrassegnata come autrice principale del wrapper sopra il DRM ioctl e coautrice delle altre astrazioni per la creazione di driver.
Lina ha espresso il suo disappunto per tale sminuimento del suo ruolo nello sviluppo, ritenendo che le menzioni "Co-developed-by:" siano insufficienti in una situazione in cui le patch originariamente create da Lina sono state soggette solo a modifiche cosmetiche. Ad esempio, nel codice drm/drv.rs, delle 321 righe, 280 sono state scritte da Lina, mentre le altre righe sono per lo più dedicate all'aggiunta di commenti e a piccole modifiche del codice di registrazione dei driver. Secondo Lina, il codice non è stato significativamente rielaborato, quindi sarebbe etico indicarla come autrice principale.
In risposta, Danilo ha spiegato che le patch in cui Lina è indicata come coautrice sono state ristrutturate (il codice è stato suddiviso in file separati) e modificato in modo significativo in alcuni punti. Le patch sono pubblicate con la paternità di "Danilo Krummrich", poiché prima non esistevano separatamente. Inoltre, Danilo ha ritenuto che attribuire il codice modificato a un'altra persona avrebbe portato a insoddisfazione, in quanto avrebbe distorto il lavoro di qualcun altro. In precedenza, Lina aveva autorizzato in una corrispondenza personale di attingere al codice delle sue patch passate e di usarlo in qualsiasi modo. Danilo, inoltre, può senza problemi indicare Lina come autrice principale, come ha comunicato nel suo primo messaggio, dicendo che se Lina non è soddisfatta della menzione nella sezione "Co-developed-by", basta semplicemente farglielo sapere.
Lina ha risposto che, avendo consentito di utilizzare il proprio codice in qualsiasi modo, considerava la conservazione della paternità scontata e non era pronta al fatto che Danilo mettesse il suo nome come autore principale, come se avesse scritto gran parte di esso. Lina ha sottolineato che non intende gonfiare il conflitto ed è delusa dal fatto che la suddivisione dei commit in parti sia sufficiente per cambiare l'autore principale del codice su cui ha lavorato per molti anni.
Dopo di ciò, Danilo ha pubblicato un elenco delle modifiche apportate (dimensione diff di 1462 righe), che mostra che le sue correzioni non si limitano a semplici commenti. E ha scritto di nuovo che non era contrario a mettere Lina come autrice principale e che sarebbe stato sufficiente per lei indicare in quali patch specifiche farlo. Invece, Lina ha iniziato ad accusarlo di appropriazione della paternità e a svalutare il suo contributo allo sviluppo. Non ha tempo per coinvolgersi in un conflitto, quindi Lina dovrebbe semplicemente scrivere dove e cosa deve essere modificato senza nuove accuse.
Lina ha risposto di rammaricarsi di essere stata parte di una comunità simile. Per quanto riguarda il codice, ha chiesto di rimuovere completamente il suo nome dai mentions di paternità e ha autorizzato l'uso del codice sotto licenza CC-0 (rinuncia ai diritti d'autore) come bene pubblico, consentendo l'uso per qualsiasi scopo. La rinuncia alla paternità si estende anche a qualsiasi altro codice scritto da Lina per il ramo git Asahi.
Successivamente, nella discussione è intervenuto Dave Airlie, maintainer del sottosistema DRM, che ha dichiarato che il progetto manterrà la paternità di Lina in qualsiasi patch in cui sia presente il suo codice, comprese le patch modificate, senza entrare nei dettagli né cercare di drammatizzare.
Lina ha risposto di aver condotto un'analisi delle modifiche e di essere giunta alla conclusione che su 978 righe di codice, più della metà è stata presa dai suoi patch. Se consideriamo il codice pulito, Danilo ha aggiunto 270 righe, relative a un refactoring minore, e non alla creazione di nuove funzionalità. Esaminando solo il codice, senza commenti, Lina stima il suo contributo al 75%. Se i maintainers non sono disposti a rimuovere il suo nome dalla paternità, Lina preferirebbe che il suo nome fosse indicato come autore principale per le patch dalla 3 alla 7.
Ricordiamo che alla fine di marzo, Lina ha annunciato la sospensione indefinita del suo lavoro sul driver del kernel Asahi, poiché non si sente più al sicuro nel lavorare nell'ecosistema Linux. In precedenza, a febbraio, Héctor Martín aveva annunciato la cessazione dello sviluppo e il ritiro dei poteri di leader del progetto Asahi Linux, allontanandosi anche dal supporto della piattaforma ARM/Apple nel kernel Linux. La causa è stata attribuita alla resistenza alla promozione nel kernel Linux dei lavori "Rust for Linux" e alla creazione di un'atmosfera ostile per i partecipanti a questo progetto.
Si presume che Lina Asahi sia un personaggio virtuale creato da Hector Martin. Non ci sono prove dirette a sostegno di ciò, ma ci sono segni indiretti. Lina non è mai apparsa a conferenze o streaming dal vivo, e conduce tutti gli incontri video solo utilizzando un personaggio animato. L'accento del personaggio corrisponde all'accento spagnolo di Hector, ma il tono della voce è cambiato. Inoltre, in diversi streaming è comparso il nome del computer e il contenuto delle directory domestiche: il nome del computer («raider») corrisponde al computer di Hector, mentre nelle directory domestiche ci sono /home/lina e /home/marcan (marcan è il nickname e sito di Hector).
Fonte: opennet.ru
