这两天,一封名为《不要提交刷KPI的patches来浪费管理员时间》的邮件“火”了!
发出之后,直接冲上了Linux内核邮件列表的“热榜”第一。
邮件中矛头直指华为。
一名内核管理员在邮件中称,最近收到不少邮件后缀名为@huawei.com的patch提交,但都是一些“没有什么用的修复”,例如拼写错误:
这应该是新手或学生经常做的事,但是你们这样做,让人怀疑是在刷KPI。
并且,该管理员表示,他看到好几个维护人员对这种无价值的修复提出异议,但提交者不管不顾,仍然想将它们合并。
他认为这样的做法只会损害公司的荣誉,请该提交者停止这种刷KPI的行为,为Linux开源社区做出真正的贡献。
要回答这个问题,就需要先看下他都提交了些什么。
简单浏览一下提交者的patch提交记录:
确实都是一些小改动,大部分涉及的代码行数也不多,其中不乏清理一些错误信息、修复拼写错误,好像在做code review?
他还曾经在一天里对同一个文件前后提交了6次细微修改。
而大概在2018年及以前,这个人提交的patch数量远不及这两年,但大部分都是包括ARM64 SMMU驱动优化等有价值的修改。
2018-2019年,几乎没什么提交,而到了2020年下半年,他的提交突然又开始频繁起来,一直到最近的5月份。
patch激增的背后,质量确实不及以前,大多数都是一些“小打小闹”。
到底咋回事?真的突然背上KPI了?
这样一封邮件,在开发者社群中引起了不少讨论。
有人认为这种每个commit就修复一个小问题的行为就是在刷KPI,也有人认为开源社区这是故意挑事,凭什么不让修这种小问题,其中甚至不乏各种阴谋论。
而当事人终于在两天之后进行了回复:
我过去对内核的贡献主要是优化ARM64 SMMU驱动程序的性能,包括iova优化、严格模式优化和懒加载模式优化。同时也致力于一些ARM SoC驱动程序的开发。
在时间和精力允许的情况下,我还为Linux内核的其他模块做贡献,找到一些可以改进的地方,进行了一些清理(cleanup)的工作。
今后,我将继续为Linux社区做出越来越重要的贡献。
而管理员收到这封回复后,立即又回信表示:肯定他过去为社区做了很多重要贡献。
并且,也不是说他另外做的那些“小清理”工作不重要,但请下次合成一个大的patch集来提交。
而他对其背后雇主华为的巨大贡献也非常熟悉,完全没有质疑。
信末这名管理员还列举了一些可以做贡献的模块,如果他愿意,可以参考。
从双方的回复来看,似乎不是很大的矛盾,双方也都在心平气和地就事论事。
事件基本告一段落,而网友们场外复盘的讨论还没有停息:
不少人指出是华为在整改代码质量,顺手把这些“小打小闹”提交了上去,而Linux社区的维护者数量少,个个都很忙,有怨气也是正常的。
为什么要整改代码质量?大概是为了代码可信改造:开源软件只要有不符合华为代码规范的地方,他们内部修改以后也需要给社区提修复patch,社区可能会不接受,但只要给个答复,就能自证“清白”。
另外,网友@养猫的哈士奇还表示在绿帽论坛上看到员工说:不是刷KPI,是华为的AI脚本自动跑出来的。
所以,准确地来说,不算刷KPI。
而针对网上出现了很多阴谋论的争吵,网友@醉卧沙场表示:大可不必小题大作、扩大讨论范围。
看到很多人在各个平台传播这个事情,引来大量口水战,我觉得有点过了。我还是希望大家能以平常心看待这个事情。截至目前几天过去了,“事发地”(Linux邮件列表)里都没有什么人争论这个事,就当事人双方各回复对方一封邮件,谈话的内容和态度也都很理性而诚恳。
最后,他认为:
对此,你怎么看?
参考链接:
[1]https://lore.kernel.org/lkml/e78add0a-8211-86c3-7032-6d851c30f614@suse.com/
[2]https://www.zhihu.com/question/466111598