|
|
Subscribe / Log in / New account

4.1 development statistics

By Jonathan Corbet
June 3, 2015
The 4.1-rc6 prepatch is out, and things look on track for an on-schedule 4.1 release — unless, of course, Linus's vacation plans get in the way. But the kernel development community doesn't stop, even when Linus does, so it seems like about time to have a look at some development statistics for this kernel cycle. 4.1 was a fairly typical development cycle with few surprises.

With 11,664 changesets merged as of 4.1-rc6, this cycle is a little bit slower than most that have been seen in the last year, though it is significantly busier than 4.0, which finished with 10,346 changesets. The number of developers involved, at 1,492, comfortably exceeds 4.0; indeed, it currently ties 3.15 for the title of the most developers ever. Chances are good that, by the time it is released, the 4.1 kernel cycle will be the first to see the participation of over 1,500 developers. Of those over 1,500 developers, 270 have contributed their first patch ever in this cycle — a fairly typical number for recent years.

Those developers have added 486,000 lines of code and removed 286,000 lines, for a net growth of 200,000 lines this time around. The most active developers doing this work were:

Most active 4.1 developers
By changesets
Ian Abbott1291.1%
Takashi Iwai1211.0%
Hans Verkuil1191.0%
Marcel Holtmann1171.0%
Aya Mahfouz1070.9%
Geert Uytterhoeven1050.9%
Laurent Pinchart1020.9%
Richard Weinberger950.8%
Joe Perches920.8%
Eric Dumazet920.8%
Al Viro900.8%
Krzysztof Kozlowski770.7%
Fabian Frederick770.7%
Benjamin Romer740.6%
Jiri Olsa730.6%
Denys Vlasenko720.6%
Mauro Carvalho Chehab670.6%
Nicholas Mc Guire660.6%
Guenter Roeck650.6%
Lars-Peter Clausen650.6%
By changed lines
Jie Yang201943.4%
Stephen Boyd135362.3%
Sudip Mukherjee101981.7%
Chanwoo Choi85711.5%
Heiko Carstens82391.4%
Tomeu Vizoso76471.3%
Hongzhou Yang73911.3%
Joe Perches71351.2%
Laurent Pinchart65891.1%
J. German Rivera63591.1%
Takashi Iwai61731.0%
Magnus Damm60821.0%
Mathieu Poirier59151.0%
Michael Ellerman58741.0%
Ray Jui53620.9%
Andy Shevchenko48570.8%
Hai Li44870.8%
Andrew Bresticker42520.7%
Markus Stockhausen42210.7%
James Hogan41720.7%

Hartley Sweeten no longer tops out the list with his Comedi driver work but, never fear, Ian Abbott contributed the most 4.1 changesets by working on, yes, the Comedi drivers. Remember, though, that Hartley contributed 463 Comedi changes in 3.19, so it may well be that work on this code is finally slowing down, though there doesn't appear to be a plan to move it out of the staging tree quite yet. Takashi Iwai is the sound subsystem maintainer, so most of his work concentrates in that area; for similar reasons, it is unsurprising that Hans Verkuil's changes were all found within the media subsystem and Marcel Holtmann's patches were applied to the Bluetooth code. Aya Mahfouz, instead, is an intern in the Outreachy project's current round; she has clearly gotten off to a strong start with a lot of cleanup patches applied to staging drivers.

On the "lines changed" side, Jie Yang's work was mostly a reorganization of the Intel audio driver code. Stephen Boyd removed some old ARM drivers, making him the developer having removed the most code in this development cycle. Sudip Mukherjee did a bunch of cleanupv work on a number of staging drivers, Chanwoo Choi worked mostly on the Samsung Exynos clock drivers, and Heiko Carstens removed a bunch of relatively obscure S/390 code — such as 31-bit support.

There were (at least) 215 employers supporting work on the 4.1 kernel, the most active of which were:

Most active 4.1 employers
By changesets
Intel130811.2%
Red Hat10699.2%
(None)10559.0%
(Unknown)9508.1%
SUSE4373.7%
Linaro3873.3%
IBM3853.3%
Outreachy3813.3%
Google3623.1%
Samsung3402.9%
Renesas Electronics2792.4%
(Consultant)2582.2%
Texas Instruments2171.9%
Broadcom1621.4%
Oracle1551.3%
Imagination Technologies1511.3%
Cisco1501.3%
Freescale1341.1%
MEV Limited1291.1%
ARM1291.1%
By lines changed
Intel7456612.6%
Red Hat414967.0%
(None)401196.8%
IBM393016.7%
(Unknown)315585.3%
Linaro295885.0%
Code Aurora Forum234954.0%
Samsung221753.8%
Google215883.7%
Renesas Electronics175483.0%
SUSE168302.9%
Broadcom152022.6%
Freescale151562.6%
Imagination Technologies109351.9%
VECTOR Institute107421.8%
Nokia98291.7%
MediaTek95821.6%
Texas Instruments88431.5%
Collabora Multimedia86211.5%
(Consultant)83121.4%

As usual, there are few surprises here, with the possible exception of the 3.3% of the changesets contributed in this cycle by current and aspiring Outreachy interns.

The Signed-off-by tags in a patch provide a picture of who handled the patch on its way into the appropriate subsystem maintainer's tree. In particular, if one looks at tags applied by developers other than the author of each patch, the result gives a view of who the gatekeepers are. For the 4.1 development cycle, the numbers look like this:

Most non-author signoffs in 4.1
By Developer
Greg Kroah-Hartman154413.8%
David S. Miller10679.6%
Ingo Molnar4073.6%
Mark Brown4053.6%
Andrew Morton4043.6%
Daniel Vetter3603.2%
Mauro Carvalho Chehab3423.1%
Ralf Baechle2632.4%
Arnaldo Carvalho de Melo2422.2%
Kalle Valo2101.9%
By employer
Red Hat224920.2%
Linux Foundation156814.1%
Intel132711.9%
Linaro9818.8%
Google6215.6%
Samsung5214.7%
SUSE3753.4%
(None)3162.8%
(Unknown)3142.8%
IBM2862.6%

While this development cycle is the result of the work of 1,500 developers and over 200 companies, at the subsystem maintainer level things are, as always, far more concentrated: over 60% of the changes going into this kernel passed through the hands of developers working for just five companies. This concentration reflects a simple fact: while many companies are willing to support developers working on specific tasks, the number of companies supporting subsystem maintainers is far smaller. Subsystem maintainership is also, increasingly, not a job for volunteer developers.

And that is the story for the 4.1 development cycle. The kernel-development machine continues to hum along, integrating the work of thousands of developers and producing the kernels that run Linux systems worldwide. There are not many surprises to be seen here, but, for such an important piece of software, "not many surprises" is generally deemed to be a good thing.

Index entries for this article
KernelReleases/4.1


to post comments

4.1 development statistics

Posted Jun 4, 2015 1:20 UTC (Thu) by jamesmorris (subscriber, #82698) [Link] (1 responses)

Keep in mind that not all maintainers sign off all the patches going in -- I prefer to "trust" my submaintainers ala Linus and pull from their repos. I'm really not sure why others don't do this.

Is there any way you can account for this in your stats?

4.1 development statistics

Posted Jun 4, 2015 18:02 UTC (Thu) by josh (subscriber, #17465) [Link]

Assuming you have an explicit merge commit for changes you merge, then analysis of the Signed-off-by chain could be augmented by analysis of the merge commits "between" a change and Linus's mainline.

4.1 development statistics

Posted Jun 4, 2015 10:07 UTC (Thu) by faramir (subscriber, #2327) [Link] (2 responses)

I generally find these posts interesting, but I think they would be more useful if you also had statistics on what area of the kernel had the most updates. While you do mention subsystems in the text, it would be nice to see some stats broken out by architecture, subsystem (memory, networking, filesystems, etc.), or device drivers. While that is theoretically orthogonal to developer/organization, I think it would still be nice to see those stats. And seeing to what extent it isn't orthogonal on an organizational basis would be particularly interesting. i.e. Which organizations are working on networking vs. filesystems, etc.

4.1 development statistics

Posted Jun 4, 2015 18:27 UTC (Thu) by fandingo (guest, #67019) [Link] (1 responses)

A heat map would be a perfect visualization.

4.1 development statistics

Posted Jun 5, 2015 18:16 UTC (Fri) by jospoortvliet (guest, #33164) [Link]

that is a great idea ;-)


Copyright © 2015, 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