Kent Overstreet, vývojár FS Bcachefs, uviedol, že budúcnosť jemu vyvinutej súborovej systému v jadre je otázna kvôli krokom komisie zodpovednej za dodržiavanie kodexu správania v komunite vývojárov (CoC Committee). Linus Torvalds odmietol prijať ďalší súbor opráv k Bcachefs do vetvy jadra 6.13 a odvolal sa na sťažnosti zo strany komisie CoC.
Niekoľko dní predtým bola do dokumentov, ktoré upravujú činnosť súvisiacu s etickým kódexom, vložená zmena umožňujúca blokovanie vývojára v prípade porušenia etického kódexu a nesúhlasu s urovnaním konfliktu podľa navrhnutého scenára výborom CoC. Nová verzia pravidiel v prípade odmietnutia priniesť verejné ospravedlnenie umožňuje uvalenie "banu", ktorý na určitý čas blokuje prijímanie patchov a pull-requestov, a tiež vylučuje porušovateľa kódexu z diskusií v komunite zablokovaním prístupu k mailing listu a službám kernel.org.
Na zmenách v etickom kódexu sa dohodli Linus Torvalds, Greg Kroah-Hartman (zodpovedný za stabilné vetvy jadra), Miguel Ochoa (Rust-for-Linux), Dave Hansen (upravovateľ subsystému mm z Intelu), Jonathan Corbet (LWN), Steven Rostedt (Red Hat), Dan Williams (Intel), Teodor Ts'o (ext4) a Konstantin Ryabtsev (administrátor Kernel.org). Blokácia môže byť vykonaná na čas, ktorý nepresiahne vyvíjací cyklus novej vetvy jadra (približne 2 mesiace). Ako podmienku na odblokovanie môže výbor CoC požadovať od porušovateľa priniesť verejné ospravedlnenie. O rozhodnutí o blokovaní rozhoduje výbor CoC so súhlasom 2/3 účastníkov hlasovania.
Blokácia Kenta Overstreeta je spojená s urážlivým vyjadrením „Get your head examined. And get the fuck out of here with this shit.“, vyneseným počas diskusie s Michalom Hockom, jedným z vývojárov systému správy pamäte v jadre. Urážku si všimli členovia výboru CoC a požiadali o verejné ospravedlnenie, na čo Kent odmietol reagovať, považujúc za neprijateľné zverejňovanie osobných záležitostí a uvádzajúc, že s Michalom už tento problém vyriešili medzi sebou. Kent tiež spomenul nepríjemné návrhy týkajúce sa potreby udržiavať imidž komunity, ale podľa Kenta to bolo vedené túžbou zachovať príťažlivosť účasti korporácií v projekte.
Kent podrobne popísal históriu a svoje videnie konfliktu, ako aj kritizoval vnucovanie výborom CoC rafinovanej komunikácie v komunite, ktorá podľa neho narúša ustálenú inžiniersku kultúru. Spory zvyčajne vznikajú medzi ľuďmi, ktorí sa hlboko starajú o svoju prácu, ale majú rôzne názory. Počas vášnivých sporov môžu vývojári neudržať svoje emócie a kričať na seba, no je to akceptovaný pracovný proces účastníkov, ktorý nakoniec vedie k nájdeniu efektívneho riešenia a posunu projektu vpred.
Podľa Kenta potláčanie vášnivých sporov vedie k vzniku kultúry pohŕdania, ktorá odrádza od interakcie s ostatnými a premieňa vývoj na klub vyvolených namiesto zachovania komunity, v ktorej môže každý participovať a vyjadriť svoj názor. Práca inžinierov spočíva v riešení zložitých problémov, a nie v ich vyhýbaní sa, pričom potláčanie sporov pri ich vzniku je v tomto kontexte škodlivou praktikou.
Podľa Kenta vášne spory zvyčajne vznikajú, keď sa vývojári snažia prísť na koreň veci a pokúšajú sa riešiť technicky zaujímavé problémy. Aj keď sa účastníci sporu nemôžu dohodnúť, objaví sa tretia strana, ktorá dokáže zhodnotiť situáciu z perspektívy a nájsť riešenie, pričom zohľadní argumenty predložené rôznymi stranami sporu.
Kent priznáva, že sa neudržal, keď sa snažil uviesť technické argumenty, ale narazil na formálne výhovorky a nezáujem prehlbovať sa do detailov. Je zaznamenané, že konflikt so sprievodným subsystémom správy pamäte (mm) vznikol už pred rokom, keď správca odmietol prijať zmenu potrebnú na implementáciu ľahkého mechanizmu profilovania operácií pridelenia pamäte. Na fungovanie mechanizmu bolo potrebné pridať makro-obväzy nad funkciami pridelenia pamäte a správca ich odmietol zo strachu, že by mohli negatívne ovplyvniť výkon.
Po roku sa situácia znova opakovala pri pokuse o zmenu týkajúcu sa správy chýb vo файловých systémoch — sprievodca subsystémom mm opäť zamietol zmenu, tentoraz so zdôvodnením možného vplyvu na bezpečnosť. Podľa Kenta sa sprievodca nechcel zaoberať podrobnosťami a nevenoval pozornosť argumentom iných vývojárov, ktorí sa dohodli na potrebe zmeny, a obmedzil sa len na povrchné úvahy (zmena sa týkala prijatia výnimky, ktorá povoľovala spracovanie niektorých chýb alokácie pamäte pri nastavenom režime GFP_NOFAIL, ktorý zakazuje vonkajšie spracovanie chýb v kritických sekciách, ako sú správy transakcií v zápise do FS, čo vedie k nútenému ukončeniu procesu, aj v situácii, kde možno chybu spracovať).
Kent tiež spomenul, že členovia výboru CoC nie sú oslobodení od emocionálnych výpadov, napríklad jeden z jeho členov si pri diskusii na konferencii v zákulisí dovolil úplne urážlivé výrazy (nazval iných vývojárov „asshole“). Toto správanie pri osobnej komunikácii na konferencii nie je prijateľnejšie ako v mailing liste, a zdá sa, že podporovatelia kódexu sa snažia vnucovať iným pravidlá, ktoré sami porušujú.
Zdroj: opennet.ru
