LWN: 5.3开发周期数据分析

640
点击上方蓝色“ Linux News搬运工”关注我们~

5.3 Kernel development cycle statistics

By Jonathan Corbet

截至9月9日,5.3 kernel开发工作已经进入尾声,预计9月15日将会正式发布。LWN按老规矩再次总结一下5.3这个相对比较繁忙的开发周期里都有哪些代码加入。

截至此时,已经有14435个patch(不包含merge所自动增加的节点)被合入到mainline。这些改动分别由1846位开发者提交,比起近期的几个release来说,5.3集成周期算是比较繁忙的。

ReleaseChangesetsDevelopers
4.1514,8661,801
4.1613,6301,805
4.1713,5411,713
4.1813,2831,728
4.1914,0431,752
4.2013,8841,749
5.012,8081,757
5.113,0341,737
5.214,0241,783
5.314,4351,846

5.3里面的patch虽然多,但也没能创造新的记录。4.9版本里面有16214个patch合入,这个记录仍然保持着。不过1846个开发者确实创了新高,说明内核开发社区仍在增长。其中256位是第一次提交代码。

全部1846位开发者删除了389000行代码,算是非常多了。他们也新增了973000行代码,所以kernel这一轮增长了584000行。其中最活跃的开发者是:

Most active 5.3 developers
By changesets
Kuninori Morimoto2711.9%
Christoph Hellwig2621.8%
Mauro Carvalho Chehab2051.4%
Nishka Dasgupta1621.1%
Chris Wilson1601.1%
Greg Kroah-Hartman1451.0%
Yue Haibing1370.9%
Masahiro Yamada1300.9%
Gustavo A. R. Silva1280.9%
Geert Uytterhoeven1200.8%
Takashi Sakamoto1130.8%
Wolfram Sang1010.7%
Arnaldo Carvalho de Melo990.7%
Colin Ian King980.7%
Arnd Bergmann960.7%
Adrian Hunter960.7%
Russell King940.7%
David Howells920.6%
Hawking Zhang900.6%
Maxime Ripard840.6%
By changed lines
Hawking Zhang36437131.2%
Arnd Bergmann849937.3%
Mauro Carvalho Chehab340412.9%
Harry Wentland335682.9%
Jason Gunthorpe224211.9%
Chris Wilson173821.5%
Richard Fitzgerald157911.4%
Linus Walleij133921.1%
Greg Kroah-Hartman117131.0%
Bernard Metzler109630.9%
Christoph Hellwig108440.9%
Pawel Laszczak77020.7%
Hannes Reinecke72550.6%
Andrii Nakryiko71430.6%
Maxime Ripard67090.6%
David Ahern65570.6%
Daniele Ceraolo Spurio57810.5%
Darrick J. Wong57760.5%
Kuninori Morimoto47170.4%
Thomas Zimmermann47060.4%

这轮贡献最多patch的是Kuninori Morimoto,他修改了大量sound子系统的代码。Christoph Hellwig对核心代码以及block子系统进行了大量改进。Mauro Carvalho Chehab把大量的文档文件转换成了新的结构化文本格式。Nishka Dasgupta修复了大量的Coccinelle的警告问题。Chris Wilson对Intel i915的显卡驱动进行了很多修改。

从修改行数来说,Hawking Zhang修改的代码占了5.3中改动代码的1/3,主要是修改了amdgpu显卡驱动的寄存器定义。Arnd Bergmann去除了不再使用的ISDN子系统代码,并且继续对kernel tree里面进行各种改进。Harry Wentland也贡献了AMD显卡驱动改动。Jason Gunthorpe则删除了一些已经作废的RDMA代码。

对测试和review做出最大贡献的分别是:

Test and review credits in 5.3

Tested-by
Andrew Bowers11512.0%
Arnaldo Carvalho de Melo272.8%
Leo Yan242.5%
Tony Lindgren242.5%
Tim Schumacher192.0%
Aaron Brown181.9%
Andre Przywara181.9%
Keerthy171.8%
Nick Desaulniers161.7%
Hans de Goede161.7%
Shijith Thotton161.7%
Reviewed-by
Alex Deucher1933.3%
Rob Herring1672.8%
Chris Wilson1151.9%
Christoph Hellwig1081.8%
Hawking Zhang1001.7%
Simon Horman931.6%
Darrick J. Wong911.5%
Andrew Lunn901.5%
Tvrtko Ursulin791.3%
Geert Uytterhoeven781.3%
Maarten Lankhorst771.3%

贡献Tested-by标签最多的是Andrew Bowers,他从来没有对kernel提交过patch,不过看起来在对Intel驱动进行大量深入测试。Review贡献者分布则比较平均,主要集中在那些要求合入之前必须有Reviewed-by的子系统里。4824个patch(占5.3的33%)都有Reviewed-by tag标记,这个比例比起过去平均书来说要高,不过比5.2版本还是略低。

Reported-by tag,是用来对报出问题的人致敬的,我们也来分析一下。5.3版本有687个patch标有Reviewed-by tag,其中最多的是:

Reported-by credits in 5.3
Hulk Robot8910.7%
kbuild test robot627.5%
Stephen Rothwell374.4%
Dan Carpenter242.9%
syzbot182.2%
Randy Dunlap111.3%
Geert Uytterhoeven91.1%
Guenter Roeck91.1%
kernel test robot91.1%
Arnd Bergmann81.0%

报出最多bug的前5名来说,其中3个是自动测试系统,一位是linux-next maintainer(linux-next对很多patch来说都是集成测试第一次发生的地方),一位是执着于使用静态分析工具寻找(并修复)bug的开发者。换句话说,围绕kernel开发流程慢慢建立起来的测试机制还是有效的,能够让不少bug在真正影响到用户之前暴露出来。

需要注意在5.3中占比14%的2026个patch都是带着"Fixes" tag的。也就是说这些都是在修复此前混入mainline代码的bug的。当然肯定有很多bug fix其实合入时忘了加Fixes tag,所以实际上bug fix的占比肯定大大高于14%这个数字。所以,我们还是要做很多事来继续改进测试架构,以及测试流程。

最后,有233个公司实体(这些是我们识别出来的,不一定全)对5.3的kernel开发都有贡献。其中最活跃的公司是:

Most active 5.3 employers
By changesets
Intel154510.7%
AMD9666.7%
(Unknown)9636.7%
Red Hat9256.4%
(None)8656.0%
Google6384.4%
Renesas Electronics6384.4%
Linaro5483.8%
IBM4603.2%
Mellanox4403.0%
(Consultant)4102.8%
Huawei Technologies3722.6%
SUSE3372.3%
Samsung3112.2%
NXP Semiconductors3092.1%
Linux Foundation2912.0%
ARM2801.9%
Facebook1881.3%
Oracle1701.2%
BayLibre1701.2%
By lines changed
AMD43253737.0%
Linaro1159269.9%
Intel769506.6%
Mellanox467324.0%
Samsung378693.2%
Google316662.7%
(Unknown)313102.7%
Red Hat310892.7%
IBM294492.5%
(None)278032.4%
SUSE189281.6%
Cirrus Logic165091.4%
(Consultant)141921.2%
Facebook137231.2%
Linux Foundation134051.1%
ARM127551.1%
Pengutronix123981.1%
NXP Semiconductors122021.0%
Renesas Electronics113451.0%
Huawei Technologies101650.9%

这个表格里的内容跟往常差不多。最活跃的公司通常都比较稳定,不会说仅在某几个release cycle里活跃。

总的来看,上述数据展示出的就是一个开发社区在按照预定的项目规划来持续合入大量改动,并且这个社区也在缓慢扩张。尽管还有这样那样的问题,内核开发社区做的很不错了。

全文完

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

极度欢迎将文章分享到朋友圈 
热烈欢迎转载以及基于现有协议修改再创作~

长按下面二维码关注:Linux News搬运工,希望每周的深度文章以及开源社区的各种新近言论,能够让大家满意~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值