关注了就能看到更多这么棒的文章哦~
Statistics from the 5.10 kernel development cycle
By Jonathan Corbet
December 14, 2020
https://lwn.net/Articles/839772/
Linus Torvalds 在12月13日发布了 5.10 kernel,终于结束了9天的繁忙开发周期。当时,有16,174个non-merge changesets合入了mainline,因此5.10比起5.9来说包含了更多的改动,不过还是不如5.8的纪录(16,308 changesets)。5.10整体来说还是一个普通的kernel版本,不过整体数据上来看还是有一些特别点的。
5.10期间总共有1,971位开发者做出了贡献,这个数字同样是仅次于 5.8 版本的纪录。其中,有252 位(将近13%)是首次为kernel提交改动,这是 5.6 版本以来的最低纪录了。5.10 中最活跃的开发者名单如下:
Most active 5.10 developers
By changesets Krzysztof Kozlowski 491 3.0% Mauro Carvalho Chehab 378 2.3% Christoph Hellwig 265 1.6% Pierre-Louis Bossart 116 0.7% Lee Jones 116 0.7% Randy Dunlap 115 0.7% Allen Pais 112 0.7% Jonathan Cameron 107 0.7% Maxime Ripard 103 0.6% Dave Airlie 98 0.6% Lad Prabhakar 97 0.6% Andy Shevchenko 87 0.5% Chris Wilson 85 0.5% Evan Quan 84 0.5% Colin Ian King 84 0.5% Andrii Nakryiko 82 0.5% Vladimir Oltean 80 0.5% Alex Deucher 79 0.5% Qinglang Miao 77 0.5% Kees Cook 70 0.4%
By changed lines Sudeep Dutt 26779 3.5% Mauro Carvalho Chehab 22741 2.9% Corentin Labbe 19091 2.5% Fabio Estevam 16757 2.2% Christoph Hellwig 14286 1.9% Cezary Rojewski 14106 1.8% Chandan Uddaraju 9357 1.2% Daniel W. S. Almeida 8012 1.0% Mike Travis 7873 1.0% Andrii Nakryiko 7455 1.0% Oded Gabbay 6989 0.9% Hans Verkuil 6839 0.9% Larry Finger 6758 0.9% Vadym Kochan 6382 0.8% Krzysztof Kozlowski 6371 0.8% Mauro Rossi 6227 0.8% Jonathan Marek 6106 0.8% Marc Kleine-Budde 6049 0.8% Jin Yao 5811 0.8% Jiaxin Yu 5464 0.7%
5.10 中贡献最多changeset的是 Krzysztof Kozlowski,他主要是在为Arm以及driver子系统来做改进,基本上每天有8个改动,每周7天不停。Mauro Carvalho Chehab 在 media 子系统和 documentation, staging 子系统做了很多改动。Christoph Hellwig则主要是对文件系统和block layer进行了大量的重写工作,都是为了移除 set_fs() 调用。Pierre-Louis Bossart 在 sound 子系统中进行了许多工作,Lee Jones 则提交了许多 warning fix。
Sudeep Dutt 为 5.10 只提交了一个 patch,不过这个 patch 移除了 Intel "many integrated core" (MIC) 设备的驱动,因为删除了非常多的代码,因此登顶了 “lines changes” 榜单。Corentin Labbe 把 Zoran MJPEG capture driver 重新恢复到了 staging tree里,而 Fabio Estevam 则移除了许多过时的 Arm board file。
最繁忙的测试者和报出最多bug的人员分别是:
Test and report credits in 5.10
Tested-by Hoegeun Kwon 86 7.3% Chanwoo Choi 79 6.7% Stefan Wahren 79 6.7% Thierry Reding 33 2.8% Aaron Brown 31 2.6% Arnaldo Carvalho de Melo 24 2.0% Nikolay Borisov 23 1.9% Nick Desaulniers 21 1.8% Yoshihiro Shimoda 16 1.4% Jonas Karlman 16 1.4% Douglas Gilbert 16 1.4% Marek Szyprowski 15 1.3% Srinivas Kandagatla 13 1.1% Sedat Dilek 13 1.1% Daniel Thompson 12 1.0%
Reported-by kernel test robot 191 15.1% Hulk Robot 190 15.0% Syzbot 97 7.7% Dan Carpenter 40 3.2% Stephen Rothwell 23 1.8% Randy Dunlap 20 1.6% Qian Cai 17 1.3% Naresh Kamboju 14 1.1% Julien Grall 8 0.6% Alexei Starovoitov 7 0.6% Rob Herring 7 0.6% Marek Szyprowski 7 0.6% Colin Ian King 7 0.6% Geert Uytterhoeven 6 0.5% Lars-Peter Clausen 6 0.5%
最多的3位 tester,都有一个共同特点:他们的 Tested-by tag总是出现在同一个 patch里面,并且都是针对 vc4 DRM driver的测试。在报出最多bug的数据里面,我们看到将近 38%的 bug report 是来自自动测试系统。注意,因为这些 tag 都是包含在 patch 里面的,因此其实意味着这只是已经有了某种程度上的解决方案的那些 bug。这些 bug 其实并不会在后面影响用户了。
总共 228 个公司 (只是我们已知的部分) 支持了 5.10 kernel 的开发工作,比起过去几个 release 来说是有增长的。提供了最多支持的是:
Most active 5.10 employers
By changesets Huawei Technologies 1434 8.9% Intel 1297 8.0% (Unknown) 1075 6.6% (None) 954 5.9% Red Hat 915 5.7% 848 5.2% AMD 698 4.3% Linaro 670 4.1% Samsung 570 3.5% IBM 521 3.2% NXP Semiconductors 439 2.7% 422 2.6% Oracle 414 2.6% SUSE 410 2.5% (Consultant) 404 2.5% Code Aurora Forum 313 1.9% Arm 307 1.9% Renesas Electronics 283 1.7% NVIDIA 262 1.6% Texas Instruments 218 1.3%
By lines changed Intel 96976 12.6% Huawei Technologies 41049 5.3% (Unknown) 40948 5.3% 39160 5.1% NXP Semiconductors 35898 4.7% (None) 30998 4.0% Red Hat 30467 3.9% Code Aurora Forum 29615 3.8% Linaro 29384 3.8% 27479 3.6% BayLibre 24159 3.1% AMD 23343 3.0% (Consultant) 19905 2.6% IBM 18312 2.4% MediaTek 15893 2.1% Arm 13390 1.7% Texas Instruments 11814 1.5% SUSE 11063 1.4% Oracle 10542 1.4% NVIDIA 10481 1.4%
Huawei 出现在 "by changesets" 榜单的顶端,这其实有点意外,而 5.8 release 的时候也是同样的情况。这次 Chehab 的工作肯定是提供了很大贡献的,不过同样还有其他 94 位华为的开发者对 5.10 进行了贡献。Huawei 在kernel 开发这方面动作很大。此外的其他数据基本上都是意料之中。
这个发布周期中还有一个特点,是在 merged commit 里面的 non-author signoffs。对某个不是自己做的 patch 打上 Signed-off-by tag,一般意味着这是在向 upstream 推送 patch 的 maintainer,通过这个数字就可以让大家知道 kernel 的 gatekeeper 都是哪些人。在 5.10 中,数据是这样的:
Non-author signoffs in 5.10
Developers David S. Miller 1074 7.0% Greg Kroah-Hartman 780 5.1% Mark Brown 707 4.6% Alex Deucher 609 4.0% Jakub Kicinski 486 3.2% Mauro Carvalho Chehab 485 3.1% Kalle Valo 453 2.9% Andrew Morton 423 2.7% Jens Axboe 329 2.1% Alexei Starovoitov 317 2.1% Hans Verkuil 315 2.0% Martin K. Petersen 289 1.9% Michael Ellerman 245 1.6% Vinod Koul 239 1.6% Shawn Guo 197 1.3% Paolo Bonzini 196 1.3% Borislav Petkov 187 1.2% David Sterba 176 1.1% Herbert Xu 175 1.1% Will Deacon 172 1.1%
Employers Red Hat 2198 14.3% Linaro 1588 10.3% 1214 7.9% Intel 1143 7.4% 1082 7.0% Linux Foundation 863 5.6% Huawei Technologies 788 5.1% SUSE 710 4.6% AMD 642 4.2% Code Aurora Forum 508 3.3% IBM 418 2.7% Oracle 407 2.6% (None) 392 2.5% NVIDIA 364 2.4% Cisco 315 2.0% Arm 296 1.9% Qualcomm 239 1.6% (Consultant) 221 1.4% Texas Instruments 187 1.2% Samsung 138 0.9%
Seeing David Miller, 是 networking 子系统的 maintainer,他通常都是在榜单第一位的,在 5.10 开发周期中也不例外。不过 Miller因为健康问题在 5.9 发布之后就暂停参与 kernel 社区的活动,这个表格中列出的其实是他在 5.10 合并周期之前的工作。Jakub Kicinski 就接过了 networking 子系统的维护工作,因此他也出现在了这个名单里(同时 Facebook 的位置也排得更加靠前了)。在 5.11 里会更明显地看到这一变化, Kicinski 目前已经在 linux-next 里面 sign-off 了 大约 900 个 patch。
好在Miller在逐渐康复中,也又开始合并 networking patch 了。同时这个故事也证明了社区在最活跃的开发者突然停止贡献的这种意外事件的时候的反应。目前看来处理得很好,networking 相关 patch 在 mainline 和 linux-next 中的进展都很迅速。看起来对 networking community 整体来说基本没有影响。
希望所有重要的 kernel 子系统都已经为这种突发性的 maintainer 变动做好准备了,不过,事实肯定并非如此。kernel 社区下次碰到这种情况的时候不一定能处理得这么好了。这次 release 中的这些数据说明 kernel 开发仍然是非常活跃的,同样 kernel 可以按规律发布,社区参与度也仍然很高,同时还有许多新的开发者加入进来。2020 年是很困难的一年,不过 kernel 社区 已经坚持过来了,看起来基本没有受什么影响。
全文完
LWN 文章遵循 CC BY-SA 4.0 许可协议。
欢迎分享、转载及基于现有协议再创作~
长按下面二维码关注,关注 LWN 深度文章以及开源社区的各种新近言论~