如何看 Hector Martin 退出上游 Linux 内核开发这件事?

208 天前
 wniming

不确定这件事将来对 Asahi Linux 的用户会产生多大的影响,目前我能感受到的影响是 marcan 的社交帐号消失了,之前这个账号发布的很多 Asahi Linux 相关的帖子都看不到了,就是下面这个帐号:

https://social.treehouse.systems/@marcan/

7089 次点击
所在节点    Linux
43 条回复
dalaoshu25
208 天前
@tomychen 鸠占鹊巢、抢班夺权
povsister
208 天前
不意外吧,从 linus 的 show me your nationality 开始,Linux 内核社区已经有明面上不可弥补的裂痕了。有生之年估计真能看到 linux 社区分裂
yolee599
208 天前
虽然我也很喜欢 rust ,但是我不喜欢 kernel 代码中混杂着 rust
bluearc
208 天前
我也不希望看到 rust 进入主线内核,但这锅应该 Linus 来背,他的态度模糊导致了其他人的工作白费,虽然 Martin 试图借助媒体闹大给内核维护团队施压也不好;还有就是内核确实该考虑引入一些现代语言了,最起码该划一个 Cpp 的子集,一直坚持 C 那只能让内核维护团队的平均年龄越来越大
F281M6Dh8DXpD1g2
208 天前
大部分人阅读能力等于零
8675bc86
208 天前
Christoph Hellwig 这人不好沟通,技术应该是真牛逼,但是脾气不太好,有几次提 patch ,他说了几句,我辩解了几句,他就不理我了。
nicaiwss
208 天前
rust 程序员只适合重写,整天问有什么可以重写的项目,让他们添砖加瓦是做不到的
w568w
208 天前
@tomychen #18 实际上是房子频繁出问题,拆迁队早就赶过来说我给你免费拆,后续建我也包了(会抽人维护接口兼容性),房子主人( Linus )既不说好、也不说不好,搞得人家拆迁队走也不是、不走也不是,在旁边心存希望住了两三年,还要天天被某些房客扔狗屎恶心(某内核开发者故意天天改 interface 来恶心 RIL Team )。

最后拆迁队实在绷不住了,敲门问能不能先改下你家庭院,结果直接被认定为强拆强建,拆迁队愤而跑路。
w568w
208 天前
@nicaiwss #23 都 2025 年了还有人信这种言论?也就骗骗自己了。

这样吧,你访问 https://github.com/trending/rust?since=monthly ,然后看看是不是重写,好吗?
nlzy
208 天前
Rust 开发人员和(不愿意写 Rust 的)C 开发人员的矛盾是不可调和的。

内核内部没有稳定 API ,这赋予了维护者想改什么东西就改什么东西的权力,可以随时改进、重构。如果改 X 模块的时候 Y 模块炸了,那 X 的维护者只需要顺带着把 Y 模块弄好就行。这事儿是很常见的。而加入 Rust 之后那可就不一样了:维护者改了 X 的 C 代码,Y 模块那边的 Rust 代码炸了,这谁负责?

按照原有规矩,C 的人就不得不去弄那个 Rust 代码,基本等于强迫 C 的人写 Rust 了,C 的人当然不愿意。所以 Rust 的人就承诺,如果改 C 代码把 Rust 改炸了的话,Rust 代码由 Rust 的人负责修。

这个承诺是很扯淡的。原本没有 Rust 的情况下,改炸了顺手修就完了,反正都是 C 语言。现在 C 的人要重构一下,还得要给 Rust 的人发邮件、等 Rust 的人来修。这要是 Rust 的人回复晚了赶不上合并窗口怎么办,这要是一两个星期都不回复(比如在度假)怎么办,要是跳出来扯皮那怎么办。而且说,有些 C 写的模块,都存在十几甚至几十年了,C 的人也维护了十几甚至几十年了,允许他们随时改进、重构代码,这确实是应该的,原有的规矩也确实如此。现在好了,重构得看 Rust 的人的脸色了。舆论上出事的模块都是这些,什么 FS 什么 DMA ,老模块了,被各个其他模块调用,一改就炸一片,未来哪天炸在 Rust 模块的头上那是必然的。

既然不可调和,那这事儿也简单,Rust 的人和(不愿意写 Rust 的) C 的人两边之间选一边开除就是了。别说什么得罪人,Linus 和 Greg K-H 连 Chinese 和 Russians 都能开除,那没有什么是不能开除的。
nicaiwss
208 天前
@w568w 好吧。说实话,如果 rust 真参与内核,每天面对那么高比例的 unsafe 代码,心里真的不会膈应吗?真的有心情开发新功能吗?难道不是先想办法把 unsafe 的范围缩小吗?
w568w
208 天前
@nicaiwss #27 RIL 其实并没有「那么高比例」的 unsafe 代码。除了和 C 对接的接口,其他几乎是完全 safe 的。

=============

另外我发觉很多人阅读能力确实为 0 。就引发争论的这件事而言,Rust in Linux 提交的补丁不是想「重写」内核中的东西,或者把看不顺眼的东西换成 Rust ,他们只是想「使用」 DMA 子系统。

他们提交的补丁主要涉及 DMA 的接口描述。再强调一遍,「并没有往 DMA 的 C 部分中加入任何 Rust 代码,是 Rust 编写的其他子系统需要用 DMA 」。有多少人看到标题就开始闭眼刷 RIIR ( Rust 重写一切)?

但仅这一点,就让负责 DMA 子系统的 C 维护者强烈反对了。这就意味着(一旦驱动依赖该子系统)主线中无法出现可用的 Rust 驱动,所以才让 Martin 沮丧。
Maboroshii
208 天前
学习 neovim ,再开一条线。 挺好
james122333
208 天前
非常好 迷你、编译快速以及省资源很重要
rust 的安全限制本质上是另类的框架
曾几何时 linux 越来越像 windows 了
importmeta
207 天前
亟需来个人跨时代, 用 Rust 重新 Linux.
SenLief
207 天前
我发现上面的的回复和这次的事件没什么关系啊,什么 rust 进入主线内核,什么重写,这都什么玩意啊,到底有没有详细看啊。
SenLief
207 天前
@w568w 应该也算是加入了,rust 这边希望在 kernel/dma 中添加 rust 代码来抽象 c 的 dma api ,dma 维护的不希望在 dma 目录中出现 rust 代码,我觉得倒是可以说的通。
guiyumin
207 天前
@XIVN1987 其实是可以的
要是能做到 api 兼容,其实真的可以抢 linux kernel 的生意
smallparking
207 天前
@nlzy 你这样一说确实是不可调和的矛盾了,还是让 rust 自己开分支维护吧,让用户决定 C kernel 和 RUST 哪个更好
libregratis
207 天前
只是个插曲而已~ marcan es español, de puta madre, solo un poco.

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1109794

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX