华为 Linux 内核贡献者被质疑刷 KPI,有哪些信息值得关注?

醉卧沙场

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

我简单浏览了一下这个开发者的patch提交记录,大概在2017年以及以前,这个人的patch虽然不多,但大部分还是有意义的patch的,2018年好像是在围绕一个功能前前后后做了一些功能添加和修复的工作。2018年底到2020年下半年几乎销声匿迹快两年,然后一年前突然又出现,出现后画风慢慢的就不太对了,像是找到了什么“法门”,patch数量渐渐多了起来,但是“风格”逐渐向“看着改了很多,但是大部分又没大用”的方向发展下去了,和之前的patch平均质量比可以说是下降了几个台阶。

当然他发这些patch也不能说不行,就像你上学时喜欢向老师反映问题,这本身没有错,但是如果你天天为一些如某同学掰了老师的粉笔、某同学的校服裤子穿反了,某同学带了本漫画书课间传阅、某同学某堂课打完铃才进来……等等的事情总老跑办公室找老师,没找着还得打电话找,并“据理力争”让老师重视,说实话这样就有点不讨喜了。甚至老师可能会劝戒道“XXX,你是不是有意想竞选班干部?如果你有意竞选,可以多做一些其它对同学们有用的事,不用总往我这跑。”

但是这终归是一个个人行为,你不能说完全因为学校要竞选班干部所以导致某些同学过于注重形式主义。把这种个人行为的责任完全推给一个庞大的集体是草率的也是没有多大意义的,当然集体需要不断增强和改善管理方式,但是哪里有完美的管理?有人的地方就有人情世故,就有鸡毛蒜皮,就有小聪明。

而Linux社区对此的反映也属于正常范围内(略微感情偏激),并没有引起规模性的口诛笔伐和议论,只是管理员的一种带有抱怨性的个人警告而以。原因他也在邮件里写明了,因为不只他一人,很多他的同行最近都遇到了同样性质的大量“无用无害”的patch,而且这种邮件不是发一两次,而是总发,而且邮件来源的后缀都一样。所以他们开始觉得这些人是不是凑在一块互相传授了什么增加绩效的“经验”,并付诸行动。在下面这个事件里我已经说过:上游Linux的维护者(相比于邮件的数量来说)其实很少,精力极其有限,光我认识的维护者几乎无不抱怨自己快被每天大量的邮件逼疯了,都希望其它的开发者能帮忙review patch,也希望自己能玩消失。所以当他们快被每天数不清的patch压死的时候,抱怨两句是正常的“生理”反映。这也就是Linus本人大部分时间都面向各个maintainer了,要是他亲自面向这些最琐碎的邮件,以他的性格这封“警告”里要是不带几个类似F开头的单词都不算完。当然大部分开发者对初学者还是很友好的,如果他能感受到你是一个初学者,而且感受到你正在尽极大的努力想成为一名正式的开发者,那你问一些问题,发一些“生涩”的patch也是可以的。但是如果他们发现你很长时间以来总是干这种事,那可能就要怀疑你的目的性了。

所以这件事要我说就是没有必要放到这个圈子以外去扩大讨论范围,我看见在圈内都没有人讨论,那封邮件“目前”还都没有人接话(解释的、讨论的、声讨的、抱怨的等等目前都还没有,出于No followups的状态):

但是却被先传到圈外引来比圈内还多的讨论。太小题大作了,这只是个单纯的个人为了绩效而使的一些小聪明而以。当然你也可以猜测是公司或者大部门的目标设定为力争追求极大patch贡献量,这种目标是好的,但是落实到基层的员工后可能有些实在没有办法,只能使出“洪荒之力”,甭管黑patch白patch,能merge的就是好patch(某种意义上这么说也没有什么大问题)。总之这种现象属于非常常见的现象,这是很多公司很多团体里都或多或少存在的现象。这种行为本质上和是不是华为的员工没有什么关系,所以看到是华为就要博一把眼球实属没必要,阴谋论到Linux社区企图灭亡华为的就更是闲的。这就好像一个行人低头看手机过马路,被交警拦住了,然后赶上交警大队最近严抓行人交通规范,所以调取了录像和记录发现这个行人以前也总低头看手机过马路。于是对他进行了一定程度的警告和教育。你说这种事算什么大事吗?不算,还不如说这个人挺倒霉的被抓了典型(当然我们也不提倡看手机过马路!)。但是如果有人告诉你是国人在国外不违反当地法律却被当地警察警告了,你怎么想?这就叫敌人故意找茬,企图打击我方国际声誉。然后马上就划分阵营,什么敌对派、投降派和良知派就出来了……

虽然帝国主义亡我之心不死,但也没有到草木皆兵的地步,天天不是想斗争这个就是想斗争那个,天天给人家划定这个是阶级敌人、那个是敌国叛徒。1968年袁隆平院士当年的试验田是被敌人破坏的吗?是被叛徒砸烂的吗?不,都不是,是被无知又不自知的人破坏的。所以奉劝这些人,有那激情不如把自己管好养活好,把老婆孩子照顾好,把爸妈照顾好,别啃老,让国家少为你操点心,有心贡献的你就多干多挣多给国家交点税,算你支持经济建设了,少给国家和家庭添负担。

补充:

我看到很多人在各个平台传播这个事情,引来大量口水战,我觉得有点过了。我还是希望大家能以平常心看待这个事情,截至目前3天过去了,“事发地”(Linux邮件列表)里都没有什么人争论这个事,就当事人回复了一下那个“警告”而已:

Hello, Qu:

My contributions to the kernel in the past have mainly been on optimizing the performance of the ARM64 SMMU driver,

including the iova optimization, strict mode optimization, and the lazy mode optimization. Also working on the

development of some ARM SoC drivers.

When time and effort is allowed, I also contribute to other modules of Linux kernel, trying to find something can be

improved, and some cleanup work is being done.

In the future, I will continue to make more and more important contributions to the Linux community.

链接如下:

Re: Please don't waste maintainers' time on your KPI grabbing patches (AKA, don't be a KPI jerk)​lore.kernel.org/lkml/0a9ae22c-44a0-6239-f61a-fa516f2a0de6@huawei.com/

所以我不明白为什么外面的吃瓜群众怎么比“事发地”的人们还兴奋?可能有人觉得当事人的回复特别官方口吻,但我觉得不管他有没有请人帮忙写回复,这个回复就算可以了,可以说不卑不亢,既没有和maintainer就一些争议性的地方争吵起来,也没有抱怨什么,也没有把自己摆到过于卑微的位置。就是先例数了一下自己以前为Linux社区做过的一些贡献,也就是我上面说的2018年以及以前的那些贡献,然后后面表示自己以后如果有机会还希望可以为Linux做更多有意义的贡献。对一个普通的开发者来说,这样就可以了,否则你还要他怎么做?如果maintainer没有不依不饶,这件事就可以画句号了。我个人觉得:

从maintainer的角度来说,如果警告一次对方态度诚恳,就没必要不依不饶,又没有什么深仇大恨,这件事也没有到要上升一个层面的地步。如果社区非要揪着不放,那就有针对某公司的嫌疑了。

从开发者的角度来说,接受别人指出的问题,表示出诚恳的态度就可以了。这事也没有多么严重,目前为止就是个态度问题。表个态并收敛就好了。

从旁观者的角度来说,瓜大家也吃的差不多了,就不要再继续扩散传播了。毁掉一个普通的开发者一个普通的员工对大家有什么好处么?得饶人处且饶人,扩散事件本身就会给这个当事人带来更多舆论压力,以及可能的更严重的后果。这件事并没有多么十恶不赦,甚至都算不上恶,就是小聪明而以。大家都是普通人,谁还没耍过小聪明,所以得饶人处且饶人吧,当前的教训我觉得已经很够了。

最后,那封警告信的作者Qu也会回复了Zhen的回复,如下:

Re: Please don't waste maintainers' time on your KPI grabbing patches (AKA, don't be a KPI jerk)​lore.kernel.org/lkml/47c66bc9-3fb9-5b02-0a89-4a51ce8f9943@suse.com/

说实话回复的和我预计的差不多,作为maintainer没有对这点事就不依不饶,也没有把这件事扩大层面,尽量维持在了技术层面的论述。指出如果真有大量这种patch可以怎么处理,然后也肯定了华为为Linux社区作出的贡献,最后也愿意接受当事人表示“还希望可以为Linux做贡献”的态度,并还为当事人提出了一些可供着手开始的方向性建议。

所以这件事到这里,在“事发地”都发展的挺好挺理性了,可以说这件事如果下面吃瓜群众和媒体平台们不再继续传播的话,当事人们都快通过简单的3封邮件和解了(除非有人过去添油加醋)。所以这里我再次呼吁,让这件事回归它本来的地方,没必要成为一个出圈话题而引来舆论的发酵。

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

全部专栏