Üblicherweise sprechen Meldungen hier im Blog vom Weg von Software in den Kernel. Im Fall von Bcachefs geht es mit Linux 6.17 vermutlich den umgekehrten Weg.
Bereits seit Monaten ist das Verhältnis von Linus Torvalds und Bcachefs-Entwickler Kent Overstreet in Schräglage. Mit Kernel 6.7 vom Januar 2024 wurde Bcachefs nach mehreren Anläufen in den Kernel aufgenommen. Die erste öffentliche Rüge für Overstreet auf der Mailingliste gab es im August. Seither ist das Thema immer das gleiche. Overstreet hält sich nicht an die Regeln der Kernel-Community, was das Einreichen von Patches angeht. Zudem sind einige Entwickler der Meinung, Overstreets rapider Entwicklungsstil sei einem Dateisystem nicht angemessen, wo Fehler leicht zu Datenverlust führen können.
Regelbrecher
Die Regeln sehen vor, dass neue Features nur im sogenannten Merge-Window, dem zweiwöchigen Zeitfenster nach der Veröffentlichung eines Kernels eingereicht werden dürfen. Danach erscheint pro Woche ein Release-Kandidat, der zur Stabilisierung dient und Fehler bereinigt. Torvalds Rügen führen bei Overstreet aber nicht zu Einsicht und Besserung. Der Entwickler von Bcachefs ist im Gegenteil streitbar und stellt die Regeln der Community, die sich im Laufe der Jahre als gangbarer Weg einer geregelten Kernel-Entwicklung herauskristallisiert haben, infrage.
Im Oktober schrieb Torvalds in Richtung Overstreet auf der Kernel-Mailingliste:
Ich denke darüber nach, Bcachefs einfach komplett aus dem Mainline-Baum zu entfernen. Weil du immer wieder zeigst, dass du kein Interesse daran hast, dass Bcachefs in Mainline funktioniert.
Ich dachte, es wäre besser, wenn es endlich in Mainline ist, aber nach allem, was du tust, scheinst du wirklich nur in deinem eigenen Sandkasten spielen zu wollen und niemanden sonst einzubeziehen.
Entschuldigung abgelehnt
Der Vorstand des Kernel Codes of Conduct (CoC) blockierte in der Folge die Patches, die Overstreet für Kernel 6.13 im November eingereicht hatte, was Overstreet zu einem sehr langen Artikel mit dem Titel Trouble in the kernel veranlasste. Die Mitglieder des Komitees für den Kernel-CoC verlangten wegen verbaler Ausfälle gegenüber anderen Entwicklern eine öffentliche Entschuldigung von Overstreet, was dieser ablehnte, da er dies für unangemessen hielt. Ein Artikel von Kernel-Kenner Thorsten Leemhuis geht näher auf die Vorwürfe ein.
Wegen Overstreets Einreichungen zu Linux 6.15-rc4 gab es kürzlich eine Auseinandersetzung zur Implementierung von Case-Insensitivity im Dateisystem. Torvalds kritisierte die Umsetzung scharf und bezeichnete Case-Insensitivity als Bug, während Overstreet auf den Bedarf und die technische Notwendigkeit pochte.
Trennen sich die Wege?
Overstreets Patches zu journal_rewind, einem neuen Feature, um bei Problemen das Dateisystem auf einen früheren Punkt zurückzusetzen, wurde erst zu 6.16-rc3 eingereicht, den Regeln entsprechend also mindestens zwei Wochen zu spät. Das befeuerte erneut die Diskussion um Overstreets Unfähigkeit, sich an die Regeln der Community zu halten. Zum Erstaunen einiger Entwickler nahm Torvalds den Code eine Woche später dann doch an.
In einem anderen Thread kündigte Torvalds als Antwort auf eine offensichtlich private Unterhaltung an, dass es wohl besser sei, wenn der Kernel und Bcachefs getrennte Wege gehen:
Ich habe den Code aufgenommen, aber ich denke auch, dass sich unsere Wege im 6.17 Merge-Window trennen werden. Du hast sehr deutlich gemacht, dass ich keine Fehlerbehebungen infrage stellen, sondern einfach alles und jedes annehmen soll.
Offen gestanden fühle ich mich zu diesem Zeitpunkt nicht wirklich wohl dabei und das Einzige, worüber wir uns in dieser Diskussion wirklich einig zu sein schienen, war »wir sind fertig miteinander«.
Noch ist nichts entschieden
Wie nicht anders zu erwarten, hat Overstreet seine eigene Sicht der Dinge. Die Zukunft von Bcachefs als offizielles Linux-Dateisystem ist in der Schwebe, was Unternehmen und Distributoren verunsichert. Sollte Bcachefs aus dem Kernel entfernt werden, würde Overstreet es künftig als DKMS-Modul ausliefern müssen, was für potenzielle Anwender mehr Aufwand bedeutet.
Eine Situation wie diese ist beispiellos in der Kernel-Entwicklung und es bleibt zu hoffen, dass Torvalds und Overstreet eine Denkpause einlegen und sich dann doch noch zusammenraufen.
Verstehe nicht, was Overstreet mit seinem (sinnlosen) Verhalten bezweckt.
Warum nicht einfach die Regeln befolgen (die man ja hinterfragen kann und darf) und gut ist.
Wenn ich eine (eigene) Sache vorantreiben will, dann stelle ich mir selbst doch nicht noch Hindernisse in den Weg!
Er ist eben ein sehr starker Charakter und da ist Anpassung schwierig aber dafuer ist er eben sau gut. Viele solcher Menschen sind menschlich schwierig aber im Fach einfach genial.
Genialität und Wahnsinn liegen manches mal so dicht beisammen🤗 , aber ja, ich denke da hast du Recht.
Naja das wird ne unendliche Geschichte.
Wie adminx schon richtig sagt, da ist einer, der eben nicht klein bei gibt. und eben nicht anstandslos nach seiner Pfeiffe tant. Das kann er nicht wirklich verkraften so wie es ausschaut.
Im Endeffekt muessen es Beide nicht.
An Kent Overstreet Stelle wuerde ich da auch abwarten.
Wenn Linus das wieder raus nimmt, dann eben als Patch selbst bereitstellen, da kann das dann eh jeder nutzen der es will.
Und wenn sich Bcachefs als super herausstellt ist es egal ob es im Kernel ist oder die Distribution es reinpatcht.
Leider ist Linus in den letzten paar Jahren auch nicht mehr der, der er mal war.
Das mit Linus ist mir auch schon aufgefallen. Und nach dem “Rauswurf” der Russen auf wunsch der Amis stellt sich mir auch die Frage wie unabhängig das ganze ist. Und nein, ich bin nicht pro russisch, aber ich finde das doch etwas diskriminierend. Und ich finde das diese zusammenarbeit weitergeführt werden sollte, auch wenn krieg herrscht (so wie auch auf der ISS).
Das liegt aber nicht an Linus’ eigenen politischen Ansichten sondern hat (leider) mit “compliance requirements” zu tun. Auch wenn Linus als finnischer Staatsbürger sicherlich nicht unbedingt “pro-russisch” eingestellt ist. Die Linux Foundation ist aber eine US-Non-Profit-Organisation und muss sich damit US-Recht und US-Sanktionen beugen. Es gibt an der Stelle einfach keine “Verschwörung”.
Zum eigentlichen Thema: ich kann beide Seiten verstehen. Der Entwicklungszyklus hat sich über die Jahre so etabliert, deshalb sollte man grundsätzlich nach diesen Regeln spielen. Speziell in diesem Fall hilft es aber Menschen, die aktuell ohne Zugriff auf das Dateisystem im Regen stehen. Das könnte man als besondere Situation durchgehen lassen, ähnlich security fixes. Darf halt nicht die Regel werden. Ich hoffe, beide Seiten können sich einigen, ohne dass bcachefs wieder rausfliegt.
Linus ist derjenige, der am längeren Hebel sitzt, Kent Overstreet sollte also derjenige sein, der sich unterordnet. Ohne in den Kernel aufgenommen zu werden, kann Bcachefs vergessen, bei Distributionen und Unternehmen groß rauszukommen.
Quatsch, der Anwender wird entscheiden was er will.
Man kann doch ganz leicht ein Kernelpatch installieren und gut ist.
Overstreet kann da gan gelassen sein.
99% der Anwender werden keinen Bock haben manuell einen Kernelpatch zu installieren geschweige denn zu supporten.
Das sehe ich auch so bzw. fehlt dann möglicherweise schlichtweg die Kompetenz bei den Mainstream Usern. Zum Glück ist Linux mittlerweile etwas breiter aufgestellt und für den Teil der Anwender die einfach nur ein Linux benutzen wollen als Ersatz für ein anderes OS, die werden das weder wollen noch können ohne sich damit beschäftigen zu müssen.
Das muss auch ok sein!
Das ist auch ok, ich hab nix gegen Mainstreamuser aber dann sollen sie keine Stimmung in irgendeine Richtung machen und schoen den Ball flasch halten.
Eventuell kann man das als Modul paketieren, ähnlich ZFS. Dann kan man es aus dem Repo installieren.
Der “Anwender” müsste zum einen erstmal von der Existenz eines Dateisystems jenseits der integrierten wissen und dann müsste sich für den eigenen Aufwand erstmal ein zusätzlicher Nutzen ergeben. Bisher habe ich über bcachefs eigentlich nur den Beef bzgl. der Patch-Einreichungen mitbekommen und ansonsten gehört, es soll angeblich btrfs und ZFS in den Schatten stellen. Was sich ja nur wirklich durch eine Aufnahme in den Kernel in aller Breite beweisen lässt.
Hier gibt es einen interessanten Post von Overstreet dazu.
https://www.patreon.com/posts/on-pending-132658586
Jedenfalls ist Overstreet nicht niedergeschlagen falls BcacheFS jetzt aus dem Kernel fliegt.
Er sieht das locker, Unternehmen und Distributionen eher nicht.
aber das ist ja denen ihr Problem. 😉
Es ist das Problem von Kent Overstreet. In der Softwareentwicklung zählen nicht nur die Codingkünste, sondern auch das Anbandeln von Kooperationen, Teamwork und Soft Skills. Kein Unternehmen wird je ernsthaft auf Bcachefs setzen, wenn Overstreet es nicht mal hinbekommt, den Code im Linux-Kernel zu behalten.
Was willste denn mit Unternehmen?? Das ist Linu, da gehts nicht ums Geld normalerweise.
Und wenn ein Unternehmen einen Verkaufcatcher braucht wird es genommen.
Bei Linus geht es durchaus ums Geld. Er ist gut darin, großen Unternehmen zu schmeicheln. Und das ist mMn sogar richtig so, da diese den Kernel am weitesten vorranbringen.
Ich würde mal sagen, dass Linux deutlich kommerzialisierter ist, wie du das vermutest.
Du ahnst nicht, wo Linux mittlerweile alles zur Anwendung kommt😁.
Mittlerweile bzw. schon länger, wird Linux im kommerziellen Umfeld angeboten und genutzt. Da zählen am Ende auch solche Argumente ob etwas im Kernel enthalten ist oder nicht.
Klar, derjenige oder dir Firma, die ein Feature haben möchte, besorgt sich das.
Hast du die letzten 25 Jahre verschlafen? 😀 Linux ist inzwischen komplett durchkommerzialisiert.
Braucht er auch nicht, der kann es als Patch selbst bereitstellen.
Dann patcht man den Kernel eben und gut ist.
Wenns direkt im Kernel waere,
es fuer die Distributionen doch eh nur ein neuer Verkaufscatcher mehr nicht.
Wenn im Olymp die Götter streiten, haben manchmal beide Recht.
Bcachefs sollte sich in der eigenen Dynamik entwickeln können ohne dabei die Stabilität des Kernels zu gefährden. Das gelingt aber nicht immer.
Mich würde es freuen, wenn es weiterhin gemeinsam klappt, aber wenn nicht, dann ist das auch keine Katastrophe.
Ich denke, die Situation ist für Linus etwas ungewohnt, denn üblicherweise faltet er jemanden zusammen und der schluckt das. Anders bei Kent, der gibt nicht klein bei. Das man keine Mitstreiter beleidigen sollte, ist selbstverständlich, aber ein wenig am Käfig rütteln muss erlaubt sein.
Da stimme ich dir voll und ganz zu, letzten Endes würde aber Overstreet kein Zacken aus der Krone brechen, wenn er mit den neuen Features bis zum nächsten Einreichungsfenster wartet. Dann würde es doch gar kein Aufhebens geben … Aber eventuell ist der Beef ja gewollt …
Glaubt man dem heise-Artikel zu diesem Thema, eckt Overstreet halt öfter an und das nicht nur bei Torvalds, sondern auch bei anderen Kernel-Entwicklern und sogar innerhalb des Bcachefs-Projekts, woraufhin sich Leute, die an Bcachefs gearbeitet hatten, zurückgezogen haben sollen.
Das klingt alles so als ob Overstreet einfach schwierig ist und leider schadet das dann auch Bcachefs, wenn er ständig alle Mitstreiter vergrault. Torvalds hatte da den Vorteil, dass man sich mit ihm abgeben musste, eine Auszeit zur Besinnung täte Overstreet sicherlich aber auch gut.
Overstreet ist sehr streitbar aber von nix kommt nix.
Denke wie ich schon schrieb, er sollte das als Patch selbst anbieten.
Er und Linus passen nicht usammen.
Und ja es wird fuer einen geraden Mann immer schlimmer einfach und konkret u sagen was phase ist, weil es u viele Verweichlichte gibt und dann laut jammern.
Das hat nichts mit einem “geraden Mann” oder irgendeiner Verweichlichung zu tun, sondern mit Overstreets Arroganz, über den Regeln der Kernel-Entwicklung stehen zu wollen … Einfach die neuen Features beim nächsten Einreichungszyklus einsenden und gut wäre es … Aber nein, einfach machen was man will und mehrfache Warnungen in den Wind schiessen …
Für mich als Außenstehendrm sieht es,eher aus, als wäre Kent ein Sheldon und der Meinung, er hätte immer recht. Das funktioniert in einer Diktatur, nicht aber in einer Gemeinschaft. Von daher hat es weniger damit zu tun, wie es bei Linus normalerweise ist. Zumal andere für nur am Käfig rütteln nicht so abgekanzelt wurden.
Dazu müsste ich wissen, was ein ‘Sheldon’ ist.
Die Figur “Sheldon” aus der Sitcom “Big Bang Theory”
Ok, bei Sitcom bin ich raus.
Klär mich mal jemand auf, warum benötigt man in Linux so viele verschiedene Dateisysteme.
Es gibt praktisch gesehen gar nicht so viele, vor allem wenn man bestimmte Features will. Dateisysteme wie Ext4 und XFS sind zwar ausgereift und bieten eine gute Performance, lassen aber viele Features vermissen, die modernere Dateisysteme bieten. Im Grunde hätten vermutlich viele gerne ZFS im Linux-Kernel, das geht wegen der Lizenz aber nicht. Btrfs ist aktuell das, was dem am nächsten kommt und für viele Anwendungen inzwischen auch gut nutzbar, teils sogar etwas flexibler als ZFS, aber eben nicht für alle Anwendungen tauglich (Raid 5 und 6 sind z.B. immer noch nicht stabil). Und weil es da gefühlt nicht mehr so richtig vorangeht, hoffen die Leute jetzt halt, dass Bcachefs das letztendlich bieten wird.
Zum Artikel:
Overstreet scheint einfach nicht dazuzulernen. Ein Rauswurf wäre schade, muss womöglich aber einfach sein. Man kann nur hoffen, dass er sich ein paar Mitstreiter zulegt (falls er denn jemanden findet, der ihn erträgt), die ihm die komplette Kernel-Integration abnehmen.
Nutze es zwar (noch) nicht, fände es aber echt bedauerlich, wenn das rausfliegen würde.
Das ist doch dann auch nicht das Ende. Dann wird eben der Kernel gepatcht.
war etwas schade fuer die Nur Nuter aber da spielt es eh nicht die Rolle.
Man könnte ein Dateisystem mit einer Bibliothek oder einem Warenlager vergleichen. Es macht einen großen Unterschied wie man die Regale aufstellt, die Daten/Bücher oder Waren darin einsortiert und je nach dem welche Anforderungen man daran knüpft, macht es auch einen gewaltigen Unterschied wie die Verwaltung davon strukturiert ist.
Die ext-Dateisysteme kann man im Grunde als eines betrachten, da sie mehr oder weniger Upgrades zueinander sind. Dann kamen noch jene von Hans Reiser, die aber aus bekannten Gründen tot sind. XFS wurde von SGI unter der GPL freigegeben und an die Linux Foundation übergeben. Dann haben wir noch btrfs als Versuch eines Gegenentwurfs zu ZFS, dessen Entwicklung aber ziemlich schleppend vorangeht.
Insgesamt sind es also gar nicht so viele und wirklich genutzt werden aktuell ext4 / btrfs / XFS, je nach Distribution. Und sie haben auch ihre unterschiedlichen Vor- und Nachteile.
Frage an die hier “Anwesenden”: Sollte nicht auch XFS zu einem “Linux-ZFS” aufgewertet werden? Oder habe ich da was falsch verstanden?
Nein aber je nach Aufgabe ist es schon sinnvoll.
Ausserdem wird man immer nach Effizienterem suchen.
Also alles durchaus berechtigt.
Braucht man ja auch nicht. Man braucht nur ZFS! *duckundweg*