Kent Overstreet, ontwikkelaar van het Bcachefs-bestandssysteem, heeft gemeld dat de toekomst van het bestandssysteem waar hij aan werkt in het ongewisse is door acties van het comitƩ dat verantwoordelijk is voor de naleving van de gedragsregels binnen de ontwikkelaarsgemeenschap (CoC-commissie). Linus Torvalds weigerde een nieuwe set correcties voor Bcachefs op te nemen in de kernelversie 6.13, verwijzend naar beschuldigingen van de CoC-commissie.
Enkele dagen daarvoor was er een wijziging aangebracht in de documenten die de activiteiten met betrekking tot de gedragsregels regelen, waardoor het mogelijk wordt om een ontwikkelaar te blokkeren in geval van schending van de gedragsregels en het niet eens zijn met het door de CoC-commissie voorgestelde conflictbeheersingsscenario. De nieuwe versie van de regels introduceert de mogelijkheid tot 'bannen', waarbij tijdelijk het ontvangen van patches en pull-verzoeken wordt geblokkeerd, evenals het uitsluiten van de schender uit de discussies in de gemeenschap door de toegang tot de mailinglijst en services van kernel.org te blokkeren.
Linus Torvalds, Greg Kroah-Hartman (verantwoordelijk voor de stabiele kernelversies), Miguel Oheda (Rust-for-Linux), Dave Hansen (ondersteunend voor de mm-subsysteem van Intel), Jonathan Corbet (LWN), Steven Rostedt (Red Hat), Dan Williams (Intel), Theodore Ts'o (ext4) en Konstantin Ryabtsev (beheerder van Kernel.org) hebben ingestemd met de wijzigingen in de gedragsregels. De blokkade kan worden opgelegd voor een periode die niet langer is dan de ontwikkelingscyclus van een nieuwe kernelversie (ongeveer 2 maanden). Om de blokkade op te heffen, kan de CoC-commissie eisen dat de overtreder publiekelijk excuses aanbiedt. De beslissing over de blokkade wordt genomen door de CoC-commissie met instemming van 2/3 van de stemgerechtigde leden.
De blokkering van Kent Overstreet is gerelateerd aan de beledigende uitdrukking 'Get your head examined. And get the fuck out of here with this shit.', die hij gebruikte tijdens een discussie met Michal Hocko, een van de ontwikkelaars van het geheugenbeheersysteem in de kernel. De belediging werd opgemerkt door leden van het CoC-committe en zij vroegen om een openbaar excuus, waarop Kent weigerde, met de opmerking dat het ongepast was om persoonlijke kwesties openbaar te maken en dat hij en Michal dit al persoonlijk hadden opgelost. Kent noemde ook de nare suggesties over de noodzaak om het imago van de gemeenschap te ondersteunen, maar volgens Kent was dit gedreven door de wens om de aantrekkingskracht van deelname aan het project voor bedrijven te behouden.
Kent beschreef in detail het verhaal en zijn visie op het conflict, en hij bekritiseerde de druk die het CoC-committe uitoefent om verfijnde communicatie in de gemeenschap op te leggen, wat volgens hem de gevestigde engineeringcultuur schaadt. Meningsverschillen ontstaan meestal tussen mensen die diep om hun werk geven, maar verschillende standpunten hebben. Tijdens verhitte discussies kunnen ontwikkelaars hun emoties niet beheersen en tegen elkaar schreeuwen, maar dit is een aanvaarde werkwijze onder de deelnemers die uiteindelijk leidt tot het vinden van effectieve oplossingen en vooruitgang van het project.
Volgens Kent leidt het onderdrukken van verhitte discussies tot een cultuur van minachting, die het verlangen om met anderen samen te werken afneemt en de ontwikkeling in een exclusieve club verandert, in plaats van een gemeenschap te behouden waar iedereen kan deelnemen en zijn mening kan geven. Het werk van ingenieurs draait om het oplossen van complexe problemen, en niet om ze te vermijden; in deze context is het onderdrukken van discussies bij hun oorsprong een schadelijke praktijk.
Volgens Kent ontstaan verhitte discussies meestal wanneer ontwikkelaars diepgaand willen graven en proberen technisch interessante problemen op te lossen. Zelfs als de debatten geen consensus bereiken, is er vaak een derde partij die de situatie van buitenaf kan bekijken en deze kan oplossen door rekening te houden met de argumenten van de verschillende kanten in de discussie.
Kent erkent dat hij niet kon inhouden, terwijl hij technische argumenten probeerde naar voren te brengen, maar kreeg in ruil daarvoor formele excuses en de wens om niet in detail in te gaan. Er wordt opgemerkt dat het conflict met de begeleidende geheugenbeheersubsyteem (mm) al een jaar geleden begon, toen de begeleider weigerde een wijziging te accepteren die nodig was voor de implementatie van een lichtgewicht mechanisme voor het profileren van geheugenallocaties. Voor de werking van het mechanisme was het nodig om macro-wrapper boven de geheugenallocatiefuncties toe te voegen en de begeleider wees deze af, uit vrees dat ze de prestaties negatief zouden beĆÆnvloeden.
Een jaar later herhaalde de situatie zich bij een poging om een wijziging te bereiken met betrekking tot foutafhandeling in bestandssystemen ā de begeleider van het mm-subsyteem wees de wijziging opnieuw af, dit keer onder verwijzing naar mogelijke gevolgen voor de veiligheid. Volgens Kent wenste de begeleider niet in detail in te gaan en de argumenten van andere ontwikkelaars aan te horen die het nodig achtten om de wijziging aan te brengen, en bleef hij beperkt tot oppervlakkige oordelen (de wijziging was gerelateerd aan het aannemen van een uitzondering die het verlenen van foutafhandeling voor bepaalde geheugenallocatiefouten toegeliet met de instelling GFP_NOFAIL, die externe foutafhandeling in kritieke secties zoals transactionele logboekverwerking in FS verbiedt, wat leidt tot geforceerde beĆ«indiging van het proces, zelfs in situaties waarin de fout had kunnen worden afgehandeld).
Kent vermeldde ook dat leden van de CoC-commissie niet vrij zijn van emotionele uitbarstingen; bijvoorbeeld, een van de deelnemers stelde tijdens een bespreking in de gangen van de conferentie beledigende uitdrukkingen (noemde andere ontwikkelaars 'asshole'). Dit gedrag is in persoonlijke communicatie op de conferentie niet meer acceptabel dan in een mailinglijst, en het blijkt dat de voorstanders van de code anderen regels proberen op te leggen die zij zelf overtreden.
Bron: opennet.ru
