{"id":121754,"date":"2025-02-07T15:46:00","date_gmt":"2025-02-07T13:46:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/krizis-v-prodvizhenii-rust-v-yadro-iz-za-opasenij-uslozhneniya-soprovozhdeniya"},"modified":"2025-02-07T15:46:00","modified_gmt":"2025-02-07T13:46:00","slug":"krizis-v-prodvizhenii-rust-v-yadro-iz-za-opasenij-uslozhneniya-soprovozhdeniya","status":"publish","type":"post","link":"https:\/\/prohoster.info\/nl\/blog\/news\/krizis-v-prodvizhenii-rust-v-yadro-iz-za-opasenij-uslozhneniya-soprovozhdeniya","title":{"rendered":"De crisis in de promotie van Rust naar de kernel door zorgen over de complexiteit van de ondersteuning","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Christoph Hellwig, maintainer van de DMA-subsystemen, KVM, Slab Allocator en de PowerPC-architectuur in de Linux-kernel, die ooit deel uitmaakte van het technisch bestuurscomit\u00e9 van de Linux Foundation en als eiser optrad in een rechtszaak met VMware gerelateerd aan de GPL, weigerde patches te bevestigen die verband hielden met de ontwikkeling van stuurprogramma's in de Rust-taal. De voorgestelde patches voegden wrappers toe rond verschillende functies van het DMA-subsysteem, waardoor DMA kon worden gebruikt in stuurprogramma's geschreven in Rust.     <\/p>\n<p>Als reden voor de weigering werd de complexiteit van het onderhouden van de code genoemd bij het gebruik van wrappers in andere talen en de wens om de programmeerinterfaces naar DMA in een leesbare C-vorm te behouden, zonder deze te verwateren door onduidelijke wrappers. Christoph stelde voor om rechtstreeks naar de oorspronkelijke C API van DMA in elk stuurprogramma voor Rust te verwijzen, om extra abstracties te voorkomen waar de kernel-ondersteuners afhankelijk van zouden worden.       <\/p>\n<p>De patch-ontwikkelaars hebben aangegeven dat zij de volledige verantwoordelijkheid voor het onderhoud van de code in Rust op zich zullen nemen, bereid zijn om deze patches zelfstandig te onderhouden en de wrappers in een aparte subdirectory hebben geplaatst (rust\/kernel\/dma.rs). Als reactie heeft Christoph een veto uitgesproken (\"Nacked-by\") tegen het aannemen van gerelateerde Rust-patches en aangegeven dat hij geen extra onderhoudspersoon nodig heeft. Christoph verklaarde dat als de ontwikkelaars van de wrappers de onmogelijkheid van het onderhouden van Linux door menging van meerdere talen in \u00e9\u00e9n codebase willen veroorzaken, ze dit in hun eigen driver moeten doen en deze kwaadaardige tumor niet op de kernsystemen mogen uitbreiden.     <\/p>\n<p>Tegelijkertijd verduidelijkte Christoph dat hij niets tegen de Rust-taal heeft en deze beschouwt als een van de beste nieuwe talen, maar hij is tegen het mengen van code in verschillende talen. Volgens Christoph is hij voor de creatie van nieuwe projecten in Rust, maar tegen het mengen van Rust met grote codebases in C, omdat zo'n mengeling het onderhoudsgemak van de kernel, als ge\u00efntegreerd project, sterk vermindert.                <\/p>\n<p>De kern van de problemen met de ondersteuning is dat Rust-wraps de ondersteuners afhankelijk maken van de code in de Rust-taal. Op het eerste gezicht lijkt het alsof de wraps slechts bovenop C-structuren en functies zijn gebouwd, die geen invloed hebben op de ontwikkeling en ondersteuning van de code in C. Maar dat is niet het geval. Bij het bestaan van dergelijke wraps moeten ontwikkelaars van subsystemen die in C zijn geschreven rekening houden met de impact van hun wijzigingen op de voortzetting van de functionaliteit van de wraps. Elke wijziging in datatypes of interne functies in C kan leiden tot de noodzaak om de code van de wraps te wijzigen, daarom moeten wijzigingen die invloed hebben op de wraps in de C-code worden gevolgd en gesynchroniseerd met de code in Rust. Veel ondersteuners zijn niet bereid om extra verantwoordelijkheid te nemen voor het oplossen van problemen die zich in de Rust-code voordoen en zijn niet van plan hun tijd te besteden aan het bijhouden van de status van Rust-wraps.    <\/p>\n<p>De situatie met de complexiteit van de ondersteuning is niet hypothetisch. Jason Gunthorpe, de maintainer van TPM, VFIO en Infiniband bij NVIDIA, voegde zich bij de discussie en gaf een voorbeeld van het afwijzen door Linus Torvalds van een pull-verzoek met wijzigingen in de geheugensubsysteem, omdat deze wijziging leidde tot een crash bij het proberen om de kernel met ondersteuning voor Rust te compileren. De crash trad op omdat de ondersteuners van de Rust-code de nodige wijzigingen in de bindgen-generator niet hadden toegevoegd. Hierdoor waren de ondersteuners van het geheugensubsysteem bij het doorvoeren van een wijziging die volledig correct was vanuit het perspectief van de C-code en de kernel in het algemeen, afhankelijk van optionele externe code in de kernel waarvoor andere mensen verantwoordelijk zijn.     <\/p>\n<p>De weigering om de wrapper-code voor DMA-aanroepen te accepteren heeft de ontwikkelaars van het Rust for Linux-project in een impasse gebracht, omdat zonder dergelijke wrappers het ontwikkelen van volledige drivers in Rust bemoeilijkt zal worden. Hector Martin, maintainer van de ARM-chipondersteuning voor Apple en leider van het Ashai Linux-project, heeft als mogelijke oplossing voor het conflict voorgesteld om de acceptatie van de wrapper rechtstreeks via Linus Torvalds te verkrijgen, om de maintainer van de DMA-subsystem te omzeilen. Als Linus akkoord gaat met deze schending van de hi\u00ebrarchie en de bestaande praktijk, kan dit leiden tot een crisis in de ontwikkeling van de kernel; als hij het weigert, zal dit de voortgang van Rust in de kernel stoppen.       <\/p>\n<p>Als een optie noemde Hector de aansprakelijkheid van Christoph voor het schenden van de gedragscode vanwege een opmerking waarin Christoph Rust vergeleek met een kankertumor. Bovendien schreef Hector dat hij moe was van alle bureaucratische rompslomp, niet bereid was om simpelweg te vertrouwen op bestaande processen en suggeerde hij een betrokkenheid van sociale media. Dave Airlie, de maintainer van de DRM-subsystemen, adviseerde om het conflict niet op te blazen en te begrijpen dat giftig gedrag aan beide kanten onacceptabel is, ongeacht wie er gelijk heeft in de discussie.     <\/p>\n<p>Linus Torvalds heeft zich bij de discussie aangesloten en aangegeven dat het probleem mogelijk in Hector zelf ligt en zijn zelfvertrouwen dat hij iets beter weet dan anderen, en niet in het huidige ontwikkelproces van de kernel, dat functioneert. Het ontwikkelproces van de kernel heeft zijn problemen, maar dat is de werkelijkheid \u2014 er is niets perfect in het leven. Pogingen tot intimidatie via sociale media ontmoedigen Linus om enige betrokkenheid bij Hectors aanpak te hebben. Voor Linus zijn technische discussies en patches belangrijk, niet druk uitoefenen via sociale media.    <\/p>\n<p>In reactie heeft Hector een verzoek ingediend om zichzelf te verwijderen als maintainer voor het ARM\/APPLE-platform, omdat hij het vertrouwen in het ontwikkelproces in de kernel en de gemeenschapbeheer aanpak kwijt is geraakt. Hij heeft ook verklaard dat de ontwikkeling van het ARM\/Apple-platform buiten de hoofdkernel van Linux zal doorgaan. Er is nog een maintainer voor het ARM\/Apple-platform in de kernel \u2014 Sven Peter, die van plan is de ondersteuning van het platform in de kernel voort te zetten.<br \/>\n<br \/>Bron: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=62685\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u0440\u0438\u0441\u0442\u043e\u0444 \u0425\u0435\u043b\u0432\u0438\u0433 (Christoph Hellwig), \u043c\u044d\u0439\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c DMA, KVM, Slab Allocator \u0438 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b PowerPC \u0432 \u044f\u0434\u0440\u0435 Linux, \u0432 \u0441\u0432\u043e\u0451 \u0432\u0440\u0435\u043c\u044f \u0432\u0445\u043e\u0434\u0438\u0432\u0448\u0438\u0439 \u0432 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0439 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043a\u043e\u043c\u0438\u0442\u0435\u0442 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 Linux Foundation \u0438 \u0432\u044b\u0441\u0442\u0443\u043f\u0430\u0432\u0448\u0438\u0439 \u0438\u0441\u0442\u0446\u043e\u043c \u0432 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u043e\u043c \u0441 GPL \u0441\u0443\u0434\u0435\u0431\u043d\u043e\u043c \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0435 \u0441 VMware, \u043e\u0442\u043a\u0430\u0437\u0430\u043b\u0441\u044f \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0442\u044c \u043f\u0430\u0442\u0447\u0438, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435 \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust. \u041f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0439 \u043f\u0430\u0442\u0447\u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u043b\u0438 \u043e\u0431\u0432\u044f\u0437\u043a\u0438 \u043d\u0430\u0434 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-121754","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u0440\u0438\u0441\u0442\u043e\u0444 \u0425\u0435\u043b\u0432\u0438\u0433 (Christoph Hellwig), \u043c\u044d\u0439\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c DMA, KVM, Slab Allocator \u0438 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b PowerPC \u0432 \u044f\u0434\u0440\u0435 Linux, \u0432 \u0441\u0432\u043e\u0451 \u0432\u0440\u0435\u043c\u044f \u0432\u0445\u043e\u0434\u0438\u0432\u0448\u0438\u0439 \u0432 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0439 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043a\u043e\u043c\u0438\u0442\u0435\u0442 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 Linux Foundation \u0438.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/nl\/blog\/news\/krizis-v-prodvizhenii-rust-v-yadro-iz-za-opasenij-uslozhneniya-soprovozhdeniya\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"nl_NL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041a\u0440\u0438\u0437\u0438\u0441 \u0432 \u043f\u0440\u043e\u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0438 Rust \u0432 \u044f\u0434\u0440\u043e \u0438\u0437-\u0437\u0430 \u043e\u043f\u0430\u0441\u0435\u043d\u0438\u0439 \u0443\u0441\u043b\u043e\u0436\u043d\u0435\u043d\u0438\u044f \u0441\u043e\u043f\u0440\u043e\u0432\u043e\u0436\u0434\u0435\u043d\u0438\u044f | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u0440\u0438\u0441\u0442\u043e\u0444 \u0425\u0435\u043b\u0432\u0438\u0433 (Christoph Hellwig), \u043c\u044d\u0439\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c DMA, KVM, Slab Allocator \u0438 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b PowerPC \u0432 \u044f\u0434\u0440\u0435 Linux, \u0432 \u0441\u0432\u043e\u0451 \u0432\u0440\u0435\u043c\u044f \u0432\u0445\u043e\u0434\u0438\u0432\u0448\u0438\u0439 \u0432 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0439 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043a\u043e\u043c\u0438\u0442\u0435\u0442 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 Linux Foundation \u0438.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/nl\/blog\/news\/krizis-v-prodvizhenii-rust-v-yadro-iz-za-opasenij-uslozhneniya-soprovozhdeniya\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2025-02-07T13:46:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2025-02-07T13:46:00+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Crisis in de promotie van Rust in de kernel door zorgen over complicaties in het onderhoud | ProHoster","description":"Christoph Hellwig, maintainer van de DMA-, KVM-, Slab Allocator-subsystemen en de PowerPC-architectuur in de Linux-kernel, die ooit deel uitmaakte van het bestuurlijke technische comit\u00e9 van de Linux Foundation.","canonical_url":"https:\/\/prohoster.info\/nl\/blog\/news\/krizis-v-prodvizhenii-rust-v-yadro-iz-za-opasenij-uslozhneniya-soprovozhdeniya","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"nl_NL","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041a\u0440\u0438\u0437\u0438\u0441 \u0432 \u043f\u0440\u043e\u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0438 Rust \u0432 \u044f\u0434\u0440\u043e \u0438\u0437-\u0437\u0430 \u043e\u043f\u0430\u0441\u0435\u043d\u0438\u0439 \u0443\u0441\u043b\u043e\u0436\u043d\u0435\u043d\u0438\u044f \u0441\u043e\u043f\u0440\u043e\u0432\u043e\u0436\u0434\u0435\u043d\u0438\u044f | ProHoster","og:description":"\u041a\u0440\u0438\u0441\u0442\u043e\u0444 \u0425\u0435\u043b\u0432\u0438\u0433 (Christoph Hellwig), \u043c\u044d\u0439\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c DMA, KVM, Slab Allocator \u0438 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b PowerPC \u0432 \u044f\u0434\u0440\u0435 Linux, \u0432 \u0441\u0432\u043e\u0451 \u0432\u0440\u0435\u043c\u044f \u0432\u0445\u043e\u0434\u0438\u0432\u0448\u0438\u0439 \u0432 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0439 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043a\u043e\u043c\u0438\u0442\u0435\u0442 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 Linux Foundation \u0438.","og:url":"https:\/\/prohoster.info\/nl\/blog\/news\/krizis-v-prodvizhenii-rust-v-yadro-iz-za-opasenij-uslozhneniya-soprovozhdeniya","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2025-02-07T13:46:00+00:00","article:modified_time":"2025-02-07T13:46:00+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"121754","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 10:24:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 10:24:19","updated":"2026-01-23 10:24:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts\/121754","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/comments?post=121754"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts\/121754\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/media?parent=121754"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/categories?post=121754"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/tags?post=121754"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}