华为开发者Linux内核贡献被质疑,提交大量补丁是为了冲KPI?

新智元

共 2744字,需浏览 6分钟

 ·

2021-06-23 17:26



  新智元报道  

来源:zhihu

编辑:yaxin

【新智元导读】近日,Linux内核维护者 Qu Wenruo 在一封邮件中指出华为的开发者 Leizhen 等人提交了大量补丁,有刷KPI嫌疑。这些提交的补丁主要用于「清理错误信息」和「修复拼写错误」。


为了KPI,华为员工也是拼了。


Linux 内核维护者的一封邮件爆出,华为开发者们提交大量补丁,是为了「刷KPI」!



近日,Linux 内核邮件列表出现了一封特殊的邮件,名为 Please don't waste maintainers' time on your KPI grabbing patches,目前已登顶 LKML热榜第一


成功挤下了Linux祖师爷 Linus Torvalds 教训滥用LKML的消息。


https://lore.kernel.org/lkml/e78add0a-8211-86c3-7032-6d851c30f614@suse.com/


邮件中,Linux 内核维护者 Qu Wenruo 指出来自华为的开发者 Leizhen 等人所提交的补丁只是清理一些错误信息,或者修复拼写错误,「有刷 KPI 的嫌疑」。



Qu表示,如果这些补丁只是内核新手或者学生提交的,他不会说什么。但这些提交来自 @huawei.com,而且不止一次。


他指责这些提交者刷 KPI,还大言不惭地狡辩,想要合并这些补丁,这实实在在地损害了公司声誉。


Qu希望这些人能够停止刷 KPI,为 Linux 内核的修复做一些真正有价值的贡献。


 Linux Kernel 5.10 贡献,华为居首!


6月2日,鸿蒙OS 2.0版本正式发布。


要知道,鸿蒙系统是基于Linux应用程序接口实现内核与硬件交互。



而在Linux内核5.10版本中华为内核代码贡献排名第一!



其中,华为共提交的补丁数量为1434个,占比 8.9%。


代码修改 41049 行,占比 5.3%,代码修改行排名第2。


自动内核缺陷发现机器人 HULK Robot 在内核 Bug 发现榜单上排名第2,发现了 15% 的内核 Bug。



这些贡献具体在ARM64架构、ACPI子系统、文件系统、海思芯片支持和代码重构方面都有体现,作为Linux的开发者和使用者,华为使用代码的同时也在丰富并修改之前错误代码内容。



华为自2012年以来向 Linux 内核社区贡献第一个补丁以来,8年来不断增加对 Linux 社区的投入,从1个补丁1个开发者参与到1434个补丁95个开发者参与,从0个 Maintainer 到26个 Maintainer。



除了代码日常维护,Bug修复外,华为在代码贡献上未来将在 Linux 服务器操作系统领域中发现的新特性贡献给 Linux 内核社区。


网友:码农的「洁癖」


对于「刷KPI」这件事,贡献者本人也对此作出了回应:


我过去对内核的贡献主要是对 ARM 64 SMMU 驱动程序的性能进行优化,包括 iova 优化、严格模式优化和懒人模式优化。同时也在致力于开发部分 ARM SoC 驱动程序。


https://lore.kernel.org/lkml/47c66bc9-3fb9-5b02-0a89-4a51ce8f9943@suse.com/


知乎一位工程师的高赞回答中,大概在2017年及以前,这个人的patch虽然不多,但大部分还是有意义的patch


2018年底到2020年下半年几乎销声匿迹快两年,然后一年前突然又出现,出现后画风慢慢的就不太对了,像是找到了什么「法门」,patch数量渐渐多了起来



但是「风格」逐渐向「看着改了很多,但是大部分又没大用」的方向发展下去了,和之前的patch平均质量比可以说是下降了几个台阶。



这位工程师后续补充道:


我还是希望大家能以平常心看待这个事情,截至目前3天过去了,「事发地」(Linux邮件列表)里都没有什么人争论这个事,就当事人回复了一下那个「警告」而已。



有网友表示,其实很多程序员也有「洁癖」,看到格式不舒服的代码都想去调整一下。



从Linux内核维护者 Qu 的角度来说,把拼写错误等简单问题当做新手村留给新人,有经验的开发者致力于解决更深一层问题。这种出发点是没错的。


但是站在开发者的角度也没错。


提交bug本来就是开发者应该做的,无论bug大小,如果新手一天不清理拼写错误,难道就把拼写错误放在那里?


从这个角度来说,内核维护者是不是应该反思,为什么小bug一直没清理,反而等到华为开发者清理了,却被认为是抢贡献度。


邮件全文


嗨,Leizhen,还有邮件列表里的人。


最近我发现一个补丁从 btrfs selftest 中删除了一个调试 OOM 的错误信息。


这不是什么特别的东西,是一些内核新手的小清理工作。


但是补丁提交人的邮件地址让我很谨慎,「@huawei.com」。


上一次,我们从同一家公司得到了一些类似的补丁,他们在做一些无害的 「清理」工作,「清理」行为是无害的,但这些「修复」也是无用的。


这让我怀疑,这里到底发生了什么。


经过一些搜索,越来越多的OOM错误信息 「清理」补丁出现了。甚至还有一些修复拼写错误的补丁。


新手/学生开发者提交这样的补丁是可以的,而且希望这样的补丁能让他们成为一个长期的贡献者。


事实上,我也正是通过做这样的 「清理」开始我的内核贡献的。


但你们的做法实在是在刷KPI,我已经看到了。


并且我留意到好几个维护者在和你争论这种 「清理」,而你却在为自己辩护,试图让这些补丁被合并。


你发送的补丁代表了你的公司,这样做其实只是破坏了已经破碎的声誉。


请停止这种抢夺KPI的行为,并修复受损的声誉。


谢谢。

Qu


https://lore.kernel.org/lkml/e78add0a-8211-86c3-7032-6d851c30f614@suse.com/


对此,你怎么看?



参考资料:

http://www.zhihu.com/question/466111598

https://www.zhihu.com/question/466111598/answer/1951896502

https://blog.csdn.net/21cnbao/article/details/112598212

https://www.cnbeta.com/articles/tech/1143079.htm



-往期精彩-





浏览 53
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报