Christoph Helwig hat nach der Integration von Rust das Amt des Hauptverantwortlichen für DMA Mapping und ConfigFS niedergelegt.

Christoph Hellwig hat seine Position als Maintainer der Subsysteme dma-mapping und configfs aufgegeben. Sein Rücktritt beschränkte sich auf die Einreichung eines Antrags auf Löschung aus der Liste der Maintainer und eine Mitteilung über die Übergabe der Verantwortung an die verbleibenden Betreuer. Im Subsystem dma-mapping wird die Betreuung weiterhin von Marek Szyprowski von Samsung übernommen, während in configfs Joel Becker von Oracle verantwortlich ist.

Christoph Hellwig bleibt vorerst einer der Maintainer der Subsysteme NVM Express, vmalloc und FreeVXFS. In der Vergangenheit war Christoph Mitglied des technischen Leitungsausschusses der Linux Foundation und war an der Entwicklung von Subsystemen wie XFS, KVM, Trace Events, SCSI und Slab Allocator beteiligt und hat sich mit der Betreuung der PowerPC-Architektur im Linux-Kernel beschäftigt. Außerdem war Christoph Kläger in einem Rechtsstreit mit VMware wegen einer Verletzung der GPL-Lizenz.

Die Einstellung der Unterstützung für die Untersysteme dma-mapping und configfs ist auf die Erklärung von Linus Torvalds zurückzuführen, der die Absicht bekundet hat, die Rust-Bindings unabhängig von der Zustimmung der Maintainer der Untersysteme, für die diese Bindings erstellt wurden, in den Kernel aufzunehmen. Im Januar weigerte sich Christoph grundsätzlich, die Rust-Bindings für Funktionen zur Arbeit mit DMA in den Kernel aufzunehmen, was zu einem Konflikt führte, aufgrund dessen die Maintainer der Untersysteme Nouveau und ARM/Apple den Kernel verließen. Am 24. Februar schlugen die Entwickler des Projekts Rust for Linux einen Patch mit einer Abstraktionsschicht für das Dateisystem configfs vor, dessen Unterstützung Christoph Hellwig übernommen hatte. Christoph nahm nicht an der Diskussion über die neue Rust-Bindings für sein Untersystem teil und entfernte sich einige Tage später aus der Liste der Maintainer von dma-mapping und configfs.

Christoph Helwig hält den Einsatz mehrerer Programmiersprachen in so komplexen Projekten wie dem Linux-Kernel für unzulässig. Seiner Meinung nach erschweren gemischte Codebasen die Arbeit der Maintainer, da sie von Code in einer anderen Sprache abhängig sind. Insbesondere müssen Entwickler von Subsystemen, die in C geschrieben sind, bei Vorhandensein von Rust-Bindings die Auswirkungen ihrer Änderungen auf die Funktionalität der Bindings berücksichtigen. Jede Änderung an Datenstrukturen oder internen Funktionen in C kann dazu führen, dass der Code der Bindings angepasst werden muss, weshalb Änderungen an C-Code, die die Bindings betreffen, verfolgt und mit dem Rust-Code synchronisiert werden müssen.

Während der Entwicklung des Kernels gab es bereits Fälle, in denen Pull-Requests mit Änderungen im Speichermanagement-System abgelehnt wurden, da diese Änderungen zu einem Fehler beim Versuch führten, den Kernel mit aktiviertem Rust-Support zu kompilieren. Der Fehler trat aufgrund der Asynchronität mit dem Code zur Generierung von Rust-Bindings (bindgen) auf und führte dazu, dass die für das Speichermanagement zuständigen Komponenten bei der Förderung der Änderungen, die aus der Sicht von C-Code und dem Kernel insgesamt völlig korrekt waren, von optionalem, Drittanbieter-Code im Kernel abhingen, für den andere Personen verantwortlich sind.

Linus Torvalds ist der Meinung, dass Christoph Hellwig nicht befugt ist, die Aufnahme von Rust-Bindings für die DMA-Subsysteme in den Kernel zu blockieren, da der Code dieser Bindings den Code des DMA Mapping Subsystems nicht betrifft und in einem separaten Unterverzeichnis implementiert ist, dessen Wartung von einem anderen Maintainer übernommen wird. Linus verglich Christophs Handlungen mit dem Versuch, den Anwendungsbereich des DMA-Subsys zu kontrollieren, während die Maintainer nur für den Code ihres Subsystems verantwortlich sind, nicht jedoch dafür, wie und von wem das Ergebnis dieses Codes verwendet wird. Zum Beispiel kann eine Änderung im Code der Basissubsysteme zu Problemen mit der Funktion eines bestimmten Treibers führen, aber das ist kein Grund, die Aufnahme neuer Treiber zu behindern.

Quelle: opennet.ru

Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen 🔥 Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen | ProHoster