LWN: 5.16内核开发的数据!

关注了就能看到更多这么棒的文章哦~

Some 5.16 kernel development statistics

By Jonathan Corbet
January 10, 2022
DeepL assisted translation
https://lwn.net/Articles/880699/

5.16 内核按原计划成功地在 1 月 9 日完成了发布。这个开发周期中包含了 1,988 个开发者的 14,190 个改动,因此,它比前一个版本要繁忙很多,整体来说跟近期的几个内核版本差不多。有了新的版本之后,就意味着现在应该来看看这些改动来自哪里了。

为 5.16 做出贡献的 1,998 名开发者是有史以来第二高的数字,只有 5.13(有 2,062 名开发者)版本比它高。这一次,有 296 名开发者为内核贡献了他们的第一次修改,这属于正常范围中的较高数字了。本周期中最活跃的开发者是:

Most active 5.16 developers
By changesets
Michael Straube2862.0%
Cai Huoqing2321.6%
Jakub Kicinski2001.4%
Christoph Hellwig1581.1%
Bart Van Assche1571.1%
Krzysztof Kozlowski1401.0%
Mauro Carvalho Chehab1300.9%
Pavel Begunkov1220.9%
Thomas Gleixner1170.8%
Alex Deucher1120.8%
Matthew Wilcox1080.8%
Geert Uytterhoeven1030.7%
Jani Nikula940.7%
Ian Rogers910.6%
Arnd Bergmann880.6%
Ville Syrjälä860.6%
Mark Brown850.6%
Martin Kaiser850.6%
Colin Ian King820.6%
Jens Axboe800.6%
By changed lines
Ping-Ke Shih9111611.4%
Zhan Liu345014.3%
Nick Terrell286113.6%
Sameer Pujar151211.9%
Johan Almbladh139011.7%
Thomas Bogendoerfer115911.4%
Michael Straube90141.1%
Dmitry Baryshkov78361.0%
Srinivas Kandagatla76631.0%
Larry Finger75860.9%
Prabhakar Kushwaha62610.8%
Jakub Kicinski57960.7%
Fangzhi Zuo57650.7%
Alex Deucher56270.7%
Peter Zijlstra54480.7%
Jani Nikula52870.7%
Simon Trimmer52490.7%
Shawn Guo51520.6%
Tony Lindgren50200.6%
Derek Fang49730.6%

在 5.16 版本中贡献最多的是 Michael Straube,他的几乎所有改动都是在 staging tree 中的 r8188eu 无线网络适配器驱动程序里。自 5.15 版本把它合并进来之后,该驱动程序已经进行了 755 次改动。Cai Huoqing 给内核的许多位置提供了清理 patch,Jakub Kicinski 对整个网络子系统进行了改进,Christoph Hellwig 继续在 block 和文件系统层的重构工作,Bart Van Assche 重写了许多 SCSI 子系统的代码。

在改动行数方面,Ping-Ke Shih 因添加了 Realtek rtw89 驱动而名列前茅。与过去许多 Realtek 驱动不同,这个驱动跳过了 staging tree,直接进入了 drivers/net。Zhan Liu 贡献了两个 patch 来增加了又一组 amdgpu 头文件。Nick Terrell 更新了内核的 zstd 压缩模块,Sameer Pujar 增加了一套 NVIDIA Tegra 声音驱动,Johan Almbladh 为 32 和 64 位 MIPS 架构增加了 eBPF JIT 编译器。值得注意的是,在 5.16 中,相对来说很少有大块代码删除的动作(最大的就是 Thomas Bogendoerfer 删除了 Netlogic MIPS 支持),所以内核整体来说增加了 422,000 行。

内核项目很依赖于它的 test 人员和 review 人员,就跟它有多么依赖开发者是一样的。在 5.16 周期中,拥有最多 test 和 review 功劳的贡献者是:

Test and review credits in 5.16
Tested-by
Daniel Wheeler15314.8%
Sandeep Penigalapati343.3%
Tony Brelinski252.4%
Deren Wu242.3%
Gurucharan G222.1%
Sohaib Mohamed222.1%
Konrad Jankowski201.9%
Alexei Starovoitov161.5%
Mark Wunderlich141.4%
John Garry131.3%
Christian Zigotzky131.3%
Fuad Tabba121.2%
Shawn Guo121.2%
Geert Uytterhoeven101.0%
Ferry Toth101.0%
Reviewed-by
Christoph Hellwig2023.2%
Rob Herring1943.0%
Hans de Goede1191.9%
Pierre-Louis Bossart1041.6%
Stephen Boyd1001.6%
David Howells831.3%
David Sterba801.2%
Jani Nikula771.2%
Christian König741.2%
Andrew Lunn681.1%
Jan Kara600.9%
Kai Vehmanen600.9%
Kees Cook580.9%
Florian Fainelli570.9%
Linus Walleij550.9%

Daniel Wheeler 再次成为 test 排行榜的榜首,在 5.16 开发周期中,他的工作占了所有 test 的 15%。这意味着每天有两个以上的 patch 被测试。这里说的每天还包括了周末和假期。Wheeler 的这些测试似乎是作为他所在公司的内部 review 流程的一部分,其他许多排在前列的 test 人员也是如此。相反,名列前茅的 review 人员往往是活跃的开发者,他们也设法完成了大量的 review 工作。5.16 版本 review 列表前两名与 5.15 版本时相同。Christoph Hellwig 在 5.16 版本 70 天的开发周期中,每天都要 review 三个 patch 并自己写两个 patch。

另一种 review 是来自于选择哪些 patch 来 apply 到本地 git 并劲儿推入 mainline kernel 相关的。这个决定可能是进行一个彻底的 review,也可能是依赖于其他人的 review 投入。当维护者接受了 patch 时,他们会给这些 patch 打上 Signed-off-by 标签。通过查看非 patch 作者的这些其他人的 tag,可以了解到谁是最活跃的维护者。在 5.16 版本中,他们是:

Top signoffs in 5.16
David S. Miller10827.8%
Greg Kroah-Hartman10627.6%
Mark Brown5584.0%
Alex Deucher4723.4%
Jens Axboe4423.2%
Andrew Morton4002.9%
Martin K. Petersen3532.5%
Jakub Kicinski3252.3%
Mauro Carvalho Chehab3252.3%
Bjorn Andersson3052.2%
Paolo Bonzini2301.7%
Jonathan Cameron2241.6%
Kalle Valo2101.5%
Arnaldo Carvalho de Melo2031.5%
Hans Verkuil1831.3%
Felix Fietkau1631.2%
David Sterba1621.2%
Alexei Starovoitov1541.1%
Borislav Petkov1521.1%
Saeed Mahameed1481.1%

这份维护者名单在各个版本中的变化不大,都是由一些已经工作多年的内核项目最资深的开发者所组成的。

5.16 的工作得到了我们能够确定的 251 家公司(employers)的支持。其中最活跃的是:

Most active 5.16 employers
By changesets
Intel145410.2%
(Unknown)11968.4%
Google9326.6%
(None)7815.5%
Red Hat7655.4%
AMD6824.8%
Facebook6414.5%
Linaro5924.2%
NVIDIA4633.3%
Huawei Technologies4223.0%
SUSE3112.2%
Oracle2942.1%
IBM2741.9%
(Consultant)2661.9%
Canonical2491.8%
Arm2441.7%
Baidu2341.6%
Renesas Electronics2211.6%
MediaTek1991.4%
Code Aurora Forum1921.4%
By lines changed
Realtek9723712.2%
Intel725659.1%
AMD670768.4%
Facebook508946.4%
(Unknown)431525.4%
(None)403895.0%
Linaro394284.9%
NVIDIA388984.9%
Google358714.5%
Red Hat233122.9%
Marvell191362.4%
MediaTek153991.9%
Code Aurora Forum145641.8%
Anyfi Networks139011.7%
Renesas Electronics128881.6%
SUSE109401.4%
IBM108081.4%
Huawei Technologies103781.3%
Cirrus Logic100461.3%
Oracle87281.1%

这个表格也同样在两个版本之间通常是没有什么变化的。有些人可能会对"unknown" 这一类感到好奇,其中包括了近 400 位开发者,他们中的大多数人都贡献了一到两个 patch。这些开发者中的每一位在这个版本中都仅仅提供了很小的贡献,但他们加起来却占了总 patch 数量的很大一部分。这些开发者中的许多人已经完成了他们在 kernel 项目中希望要达成的目标,下次可能就看不到他们了。也有很多其他人则是刚刚开始,今后会随着时间的推移而成为重要的贡献者。

总而言之,5.16 只是另一个很普通的内核开发周期。来自近 2000 名开发者的大量 patch 全部整合到了这个新的、坚实的(尽管不是完美的)内核版本中。内核项目在质量控制、测试、对维护者的支持等方面不乏问题,但它还是设法在一个可预测的时间表上完成了工作。现在开始进行 5.17 版本的工作,该版本将于 3 月中旬发布。

全文完
LWN 文章遵循 CC BY-SA 4.0 许可协议。

欢迎分享、转载及基于现有协议再创作~

长按下面二维码关注,关注 LWN 深度文章以及开源社区的各种新近言论~

0537207c092c9f9ae23d90ebc79610e6.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值