|
|
Subscribe / Log in / New account

Some 5.6 kernel development statistics

By Jonathan Corbet
March 30, 2020
When the 5.6 kernel was released on March 29, 12,665 non-merge changesets had been accepted from 1,712 developers, making this a fairly typical development cycle in a number of ways. As per longstanding LWN tradition, what follows is a look at where those changesets came from and who supported the work that created them. This may have been an ordinary cycle, but there are still a couple of differences worth noting.

As Linus Torvalds pointed out in the release announcement, the current coronavirus pandemic does not appear to have seriously affected kernel development — so far. One should not, though, lose track of the fact that the 5.6 merge window closed in early February, well before the impact of this disaster was broadly felt outside of China. Most of the work merged for 5.6 was done even earlier, of course. Given the delays involved in getting work into the mainline, the full effect may not be felt until the 5.8 cycle.

It goes without saying that we hope those effects are minimal, and that the people in our community (and beyond) come through this experience as well as possible.

Of the developers working on 5.6, 214 were first-time contributors. Many projects would be delighted to have that many new contributors in a nine-week period, but that is low for the kernel — the lowest since 3.11, which featured 203 first-time contributors and was released in September 2013. This dip does not appear to be part of a long-term trend:

[first-time contributors
chart]

It is possible that this drop is partly due to the current pandemic; a surprising number of first-time contributors show up late in the development cycle with bug fixes.

The most active developers contributing to 5.6 were:

Most active 5.6 developers
By changesets
Takashi Iwai4063.2%
Chris Wilson3062.4%
Sean Christopherson1431.1%
Jérôme Pouiller1251.0%
Eric Biggers1221.0%
Arnd Bergmann1140.9%
Zheng Bin1100.9%
Geert Uytterhoeven1030.8%
Tony Lindgren1030.8%
Masahiro Yamada940.7%
Colin Ian King920.7%
Ben Skeggs910.7%
Ville Syrjälä900.7%
Andy Shevchenko880.7%
Russell King880.7%
Alex Deucher860.7%
Krzysztof Kozlowski820.6%
Thomas Zimmermann800.6%
Jens Axboe770.6%
Jani Nikula740.6%
By changed lines
Kalle Valo484837.2%
Arnd Bergmann294154.3%
Jason A. Donenfeld186642.8%
Ben Skeggs134712.0%
Greg Kroah-Hartman119311.8%
Chris Wilson106151.6%
Srinivas Kandagatla87391.3%
Alex Maftei85811.3%
Maxime Ripard75211.1%
Peter Ujfalusi69701.0%
Tony Lindgren63200.9%
Helen Koike57890.9%
Takashi Iwai56220.8%
Shuming Fan56040.8%
Michal Kalderon54450.8%
Sricharan R50650.7%
Andrii Nakryiko48570.7%
Roman Li48520.7%
Thierry Reding48450.7%
Sunil Goutham47620.7%

This time around, the developer with the most commits is Takashi Iwai, who did a bunch of cleanup and API-migration work in the sound subsystem. Chris Wilson worked exclusively on the i915 graphics driver, Sean Christopherson has, seemingly, been rewriting the KVM hypervisor from the ground up, Jérôme Pouiller worked on the wfx wireless network interface driver in the staging tree, and Eric Biggers contributed a lot of work to the filesystem and crypto subsystems.

Kalle Valo made it to the top of the "lines changed" column with just five commits; the one adding the ath11k network driver was large. Arnd Bergmann, among many other things, removed a set of obsolete ISDN drivers and more-or-less completed the task of readying the kernel for the year 2038. Jason Donenfeld added the WireGuard VPN subsystem, Ben Skeggs worked extensively on the nouveau graphics driver, and Greg Kroah-Hartman deleted the unloved octeon driver from the staging tree.

The credits for testing and reviewing patches look like this:

Test and review credits in 5.6
Tested-by
Keerthy617.6%
Andrew Bowers475.9%
Aaron Brown364.5%
Peter Ujfalusi212.6%
Tero Kristo202.5%
Stephan Gerhold202.5%
John Garry202.5%
Brian Masney182.2%
Alexei Starovoitov172.1%
Steven Rostedt151.9%
Arnaldo Carvalho de Melo151.9%
Reviewed-by
Rob Herring1402.8%
Alex Deucher992.0%
David Sterba881.8%
Andrew Lunn871.7%
Florian Fainelli831.7%
Tvrtko Ursulin821.6%
Linus Walleij781.6%
Chris Wilson781.6%
Tony Cheng741.5%
Laurent Pinchart701.4%
Andy Shevchenko691.4%

Of the patches going into 5.6, 669 (5.3% of the total) carried Tested-by tags, a decline from 5.5. Reviewed-by tags, instead, appeared in 4,183 patches, 33% of the total.

There were 877 patches added for 5.6 that included Reported-by tags to credit the reporting of a bug; the most active reporters were:

Reporting credits in 5.6
Hulk Robot17818.6%
Syzbot9910.4%
kernel test robot586.1%
Dan Carpenter232.4%
Randy Dunlap202.1%
Stephen Rothwell151.6%
Linus Torvalds70.7%
Marek Szyprowski70.7%
Christoph Paasch60.6%
Naresh Kamboju60.6%
Dmitry Osipenko50.5%
Ravi Bangoria50.5%
Michael Ellerman50.5%
Jann Horn50.5%
Erhard Furtner50.5%
Qian Cai50.5%

We continue to see an increasing number of bug reports coming from automated testing systems; such reports now make up just over a third of the total.

The work on the 5.6 kernel was supported by 207 employers that we were able to identify, a significant decline from 5.5 (which had support from 231 employers). The most active employers were:

Most active 5.6 employers
By changesets
Intel169413.4%
(Unknown)9047.1%
AMD7816.2%
(None)7786.1%
SUSE7135.6%
Red Hat7025.5%
Google5584.4%
Linaro5034.0%
Huawei Technologies4833.8%
Facebook2982.4%
Mellanox2522.0%
Renesas Electronics2472.0%
IBM2321.8%
Arm2311.8%
Code Aurora Forum2221.8%
(Consultant)2161.7%
Texas Instruments2131.7%
NXP Semiconductors2101.7%
Oracle1471.2%
Broadcom1431.1%
By lines changed
Intel7808311.5%
Code Aurora Forum6853810.1%
Linaro594928.8%
AMD449796.6%
Red Hat405536.0%
(Unknown)285914.2%
(None)273874.0%
(Consultant)232713.4%
Google200383.0%
SUSE192742.8%
Facebook175252.6%
Texas Instruments165612.4%
Mellanox149772.2%
Linux Foundation122891.8%
Marvell116781.7%
Realtek109681.6%
Collabora94911.4%
NXP Semiconductors86891.3%
Solarflare Communications86701.3%
IBM85861.3%

We have reached the point where a full one-eighth of the patches coming into the kernel originate from within Intel. For years, Red Hat was the top contributor of changesets, but its position has been slowly falling for some time; this may be the first time that SUSE contributed more patches during a development cycle. Otherwise, these numbers look about the same as they usually do.

If one looks at Signed-off-by tags applied to patches that were written by somebody else, the picture changes a bit:

Non-author signoffs in 5.6
Developers
David S. Miller116210.1%
Alex Deucher7486.5%
Greg Kroah-Hartman6535.7%
Mark Brown4453.9%
Paolo Bonzini2712.4%
Kalle Valo2392.1%
Herbert Xu2362.1%
Andrew Morton2201.9%
Mauro Carvalho Chehab2131.9%
Alexei Starovoitov1881.6%
Employers
Red Hat242321.1%
Linaro121310.6%
AMD7866.9%
Intel7636.7%
Google7466.5%
Linux Foundation7016.1%
Facebook3953.4%
SUSE3903.4%
(None)3513.1%
Mellanox2962.6%

When a developer adds a Signed-off-by tag to somebody else's patch, it (usually) means that said developer is routing that patch toward the mainline, usually by applying it to a subsystem repository. These signoffs thus give some visibility into who the kernel's gatekeepers are. David Miller, the maintainer of the networking subsystem, has kept that top position for years. The presence of other developers indicate that there continues to be a lot of activity in the AMD graphics, device support, and KVM subsystems, among others.

In the right-hand column we see that, while the percentage of patches coming from Red Hat has dropped over the years, over 20% of the patches getting into the mainline still pass through the hands of Red Hat developers.

The first time that LWN looked at signoff statistics was for the 2.6.22 development cycle in 2007. At that time, the top gatekeepers were Andrew Morton and Linus Torvalds, neither of whom handles vast numbers of patches now; the third place was held by David Miller. Four of the top-ten maintainers in 2007 are still in the top ten now. Similarly, five of the top-ten companies were in the top ten 13 years ago too (if one deems the 2013 Novell to be the same as the 2020 SUSE).

All told, the picture that emerges indicates that it's mostly business as usual in the kernel community. The flow of patches continues at a steady rate and the number of developers remains large. The makeup of the community changes — slowly — but the process of cranking out kernels continues uninterrupted.

Index entries for this article
KernelReleases/5.6


to post comments

Some 5.6 kernel development statistics

Posted Mar 30, 2020 22:11 UTC (Mon) by zx2c4 (subscriber, #82519) [Link]

> Jason Donenfeld added the WireGuard VPN subsystem

I believe most of the code I added was actually in accelerated crypto primitives and test vectors for the crypto subsystem, rather than WireGuard itself, which is much smaller than that large number.


Copyright © 2020, Eklektix, Inc.
This article may be redistributed under the terms of the Creative Commons CC BY-SA 4.0 license
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds