AI 年度盘点与2025发展趋势展望,50+案例解析亮相AICon 了解详情
写点什么

Linus 开喷谷歌内核贡献者:你的代码是垃圾!网友:我们熟悉的 Linus 回来了

  • 2024-02-01
    北京
  • 本文字数:2889 字

    阅读完需:约 9 分钟

大小:1.33M时长:07:45
Linus开喷谷歌内核贡献者:你的代码是垃圾!网友:我们熟悉的Linus回来了

近年来脾气愈发温和的 Linus Torvalds,刚刚在 Linux 内核邮件列表中发布一篇措辞最为激烈的帖子,矛头直指谷歌一位贡献者关于文件系统的建议。

 

引发 Linus 愤怒情绪的导火索正是 inodes,即索引节点。根据红帽给出的定义,inodes 是“给定文件系统上特定元数据片段的唯一标识符”。

 

过去几周以来,inodes 在 Linux 内核邮件列表上引发了广泛争论,其中谷歌员工 Steven Rostedt 与 Linus 甚至就此事展开了激烈对抗。在题为《保证所有文件和目录都拥有相同 inodes》的帖子中,作者认为在使用 tar 归档文件时,inodes 仍可发挥作用。但 Linus 则反驳称 inodes 早已过时

 

Linus 指出,“没错,inodes 曾经地位特殊且拥有历史传承。但总的来看,我们应当努力摆脱这段破碎的历史。Indoes 编号不再作为唯一的描述符。现在已经不是 20 世纪 70 年代,如今的文件系统早已发生重大转变。”

 

但关于 inodes 的争论仍未平息。Rostedt 最终建议称,所有 inodes 都应拥有唯一编号。

 

Steven 于 1998 年开始研究 Linux 内核,并于 2001 年成为一名专业(付费)内核开发人员。目前,Steven Rostedt 是谷歌内核的开发者,也是 VMware 的开源程序员,负责维护 Linux 内核的实时稳定版本等。Rostedt 是 PREEMPT_RT 补丁的原始开发者之一,并于 2004 年开始研究该补丁,目标是将 Linux 转变为实时设计的操作系统。他也是内部跟踪工具Ftrace的主要作者、开发人员和维护者,该工具旨在帮助开发人员查找内核内部发生的情况。根据 Ftrace wiki,该工具可用于调试或分析用户空间之外发生的延迟和性能问题。

 

Rostedt 参加了很多 Linux 基金会的活动,已在世界各地进行了 80 多场演讲,他也是 Linux 基金会技术咨询委员会 (TAB) 和 Linux Plumbers 编程委员会的成员。



Steven Rostedt

 

Linus 也终于按捺不住,捡起了近年来已经大大缓和的火爆脾气。

 

2018 年,在向 Linux 程序员和项目贡献者们就“邮件中的轻率攻击”道歉之后,Linus 曾宣布要休息一下并寻求帮助,并承认这种粗暴的反应“既不专业,也没有必要。我把技术上的争论当成了个人恩怨……我知道这样不好,真的非常抱歉。”

 

Linus 之所以诚恳致歉,是因为 Linux 内核邮件列表其实是众多项目贡献者的共同工作场所。辱骂性帖子显然会破坏轻松愉快的工作氛围。毕竟 Linux 的发展还要仰仗于这些志愿贡献者和维护者,恶言恶语恐怕会损害项目的未来发展。

 

在回应 Rostedt 关于唯一 inodes 编号的建议时,Linus 先是表示“如非必要,勿增复杂性。”

 

但在此之后,他就有点失控了。

 

“我真的服了,别再照搬 VFS 层函数了。这玩意当初就有问题,现在一样要出问题。我不想讨论这种废话。”

 

Linus 对 Rostedt 的批评意见,主要集中在这位谷歌开发者对讨论主题存在理解偏差——Rostedt 本人后来也承认了这一点。

 

但在此之前,Linus 的“大炮”已经轰轰作响:

 

你直接照搬了这条函数,却不理解它为什么会有相应的效果,这样的代码纯属垃圾。

真让人心累。

 


争论持续一段时间之后,Linus 开始以冷静的证据提出了更好的方法,希望解决 Rostedt 所关切的问题。这位写道,他倒不打算立刻跟进这件事,因为“我在这事上已经浪费了很多时间,手头还有不少亟待解决的工作,所以暂时就先放一放。”

 

Rostedt 则在回复中给出了似乎针锋相对的说法:

 

讽刺的是,我也有拖着没做完的工作,就是为 eventfs 的维护者倦怠支持小组编写文档!

 

不难看出,Rostedt 言外之意是——你忙,我也忙,说的好像谁不忙似的。

 

尽管引起了风波,但 Linus 也带来了令人振奋的好消息:Linux 内核 6.8-rc2 版本已首次亮相

 

Linus 指出,rc1 中存在“一个 amdgpu 调度错误,可能导致桌面挂起(最终可以恢复,但需要等待足够长的超时,所以大多数用户可能会选择重新启动)。”

 

“这个问题似乎产生了广泛影响。”

 

Linus 本人也遇到过 btrfs bug,但由于发现较早,所以这个 bug 没有进入 rc1。

 

 “总之,随着 rc2 版本逐渐趋于稳定,不少可能影响众多测试人员的问题正逐步得到解决。所以希望后续我们能修复掉更多比较复杂、不涉及常见核心设置的问题。”

 

“所以大家可以亲自测试一下了,现在一切正常。我们还是靠谱的,对吧?”

 

当然,Linus 大佬在内核开发领域绝对靠谱,但在项目管理和沟通方面恐怕还值得商榷……

Linus 内心 os:我也不想喷,但我忍不了

 

然而,大家似乎已经适应了这位 Linux“独裁者”的暴脾气,甚至有网友表示,看不到 Linus Torvalds 怼人,失去了很多快乐。

 

过去十多年里,被这位大佬怼过的开发者和公司不胜枚举。

 

2013 年,Intel 公司的内核开发人员 Sarah Sharp 称 Torvalds 的行为是不专业的,称 Torvalds“主张进行人身恐吓和暴力行为。”Torvalds 随后指责 Sharp 把自己描述成受害者博取同情,不接受任何劝他应该改变的建议。

 

在 2015 年发表演讲说到英伟达时,Torvalds 还曾转向一台摄像机说“so Nvidia fuck you”并竖起了中指。

 

2015 年底,Sarah Sharp 宣布退出(Closing a door)内核社区。Sarah Sharp 当时说道,过去一年多时间她已经逐步终止了手中的各项社区工作,转交了 USB 3.0 主控制器驱动的维护工作,不再担任开源会议的内核协调员。她不再递交任何补丁和 bug 报告,不再向内核邮件列表写任何的建议。她声称,Linux 内核社区的互动是一种“潜在有毒的背景辐射”,充满了性别歧视、语言暴力和不尊重人。

 

Torvalds 最终也意识到他的言行会伤害到社区发展。2018 年,他决定休假并反思自己的行为。但反思过后,该喷还是要喷。

 

2020 年,在严辞拒绝 Intel 安全漏洞相关补丁之后,Linus Torvalds 再次对 Intel 开喷,直言 “我希望 AVX-512 赶紧‘去死’ ”。

 

事情的起因是 Linus Torvalds 对 Intel 的 Advanced Vector Extensions 512(AVX-512)指令集提出了一些激进的看法,称其为“功率病毒”,其创建目的单纯只是为了使 Intel 公司的 CPU 硬件在基准测试中跑分更高。当然,Linus 也坦承了自己“脾气暴躁”,并且表示对 Intel 确实“有偏见”。

 

AVX-512 是 Intel 公司在 2013 年发布的一套扩展指令集,其指令宽度扩展为 512 bit,每个时钟周期内可执行 32 次双精度或 64 次单精度浮点(FP)运算,专门针对图像 / 音视频处理、数据分析、科学计算、数据加密和压缩和深度学习等大规模运算需求的应用场景。

 

Linus 认为 Intel 为了提高 CPU 的性能跑分,强行在 CPU 中塞入了像 AVX-512 这样的东西,导致 CPU 内核臃肿,为了提升少数特定使用场景下的运算性能而影响了大部分普通用户的使用体验。

 

Linus 就此事发表评论称:


“我希望 AVX-512 赶紧“去死”(dies a painful death),这样 Intel 就可以开始解决实际的问题,而不是去尝试创造这些花里胡哨的指令集,然后围绕它们做一些自欺欺人的基准测试。

 

我希望 Intel 能够返璞归真:让他们的进程再次正常运行,更多地专注于提升用户基本体验的常规代码,而不是纠结于所谓的高性能运算或一些毫无意义的特殊情况下才会出现的问题。

 

参考链接:

https://www.theregister.com/2024/01/29/linux_6_8_rc2/

https://www.bez-kabli.pl/news/en/2024/01/29/linus-torvalds-expresses-frustration-with-google-developers-over-inodes-in-the-linux-kernel/

https://twitter.com/srostedt/status/1403081676327108612?lang=en

2024-02-01 16:179956
用户头像
李冬梅 加V:busulishang4668

发布了 957 篇内容, 共 554.5 次阅读, 收获喜欢 1119 次。

关注

评论

发布
暂无评论

5年Java经验字节社招:半月3次面试,成功拿到Offer,大厂Mysql高频面试题

Java 程序员 后端

2021春招总结,面了阿里,腾讯,做Java程序员真的没有春天吗

Java 程序员 后端

2021阿里大牛最新发布:Java高频面试题和核心技术(已涨薪6K

Java 程序员 后端

谈一谈区块链项目使用的数据库LevelDB

Regan Yue

区块链 leveldb 11月日更

2021最新支付宝4面+美团4面+拼多多四面面试总结,狂刷200道数据结构与算法

Java 程序员 后端

阿里P6面试官:Redis如何实现分布式锁?锁过期了怎么办?

Java高级开发

redis Java、

7张图带你轻松理解Java 线程安全,java开发架构思想

Java 程序员 后端

linux之git入门命令

入门小站

Linux

97 道大厂 Java 核心面试题出炉,来试试看你会几道题?

Java 程序员 后端

AcWing 1532,java教程下载网盘

Java 程序员 后端

30岁,转行学编程靠谱吗?,java银行面试的问题

Java 程序员 后端

95 后程序员一出校门就拿年薪 32 万?,java入门视频教学

Java 程序员 后端

30天熬夜苦学这本Java后端架构设计精讲,大厂三面架构问题so easy

Java 程序员 后端

6种新方法帮你提高Java学习能力,mysql教程入门到精通pdf

Java 程序员 后端

2021毕业的Java应届生,面试需要掌握哪些技能,才能收割offer

Java 程序员 后端

2021版阿里Java亿级并发设计手册:基础+数据库,linux服务器开发需要的技术

Java 程序员 后端

3分钟快速搞懂Java的桥接方法,Java多态实现原理解析

Java 程序员 后端

如何将字符串截取成一个集合

卢卡多多

内容合集 11月日更

2021最新整理美团面经分享:999页Java面试宝典+技术知识点总结(1)

Java 程序员 后端

OpenYurt 与 FabEdge 集成验证——云边数据面通信初试

阿里巴巴云原生

阿里云 云原生 边缘计算 openyurt FabEdge

2021版最新!字节跳动3面+腾讯6面一次过,java高级特性面试题

Java 程序员 后端

2021秋招必刷题:Redis+Mybatis,java使用教程答案

Java 程序员 后端

双维度第一!百度智能云领衔中国“AI+工业互联网”市场领导者阵营

百度大脑

人工智能 百度

09 K8S之对象类资源配置

穿过生命散发芬芳

k8s 11月日更

最佳实践|Apache Pulsar 在拉卡拉的技术实践

Apache Pulsar

开源 架构 中间件 Apache Pulsar 消息系统 Apache 分布式

@RequestMapping详解,隔壁都馋哭了

Java 程序员 后端

Flink企业级优化全面总结(3万字长文,15张图)

大数据老哥

2021最新整理美团面经分享:999页Java面试宝典+技术知识点总结

Java 程序员 后端

【Java 原理剖析系列】深度分析 Semaphore工作原理分析

洛神灬殇

Java 并发编程 Semaphore 11月日更

2021技能大赛云计算赛项先电2,java基础入门课后答案清华大学出版社

Java 程序员 后端

50道Java面试常问的基础知识,虽是基础但是避坑之路可得小心谨慎

Java 程序员 后端

Linus开喷谷歌内核贡献者:你的代码是垃圾!网友:我们熟悉的Linus回来了_操作系统_李冬梅_InfoQ精选文章