|
|
Subscribe / Log in / New account

Some numbers from the 4.6 development cycle

By Jonathan Corbet
May 11, 2016
With the 4.6-rc7 release on May 8, the 4.6 kernel is nearly ready for release. It wouldn't be a proper development cycle without a set of statistics showing where the code came from this time around. With the 4.6 kernel we have seen some old names return to the lists of the top contributors, but, for the most part, it looks like a typical — if busy — cycle.

The 4.6 merge window, with 12,172 non-merge commits, was the busiest in the history of the kernel project. By current appearances, though, 4.6 will not be setting the record for the busiest development cycle overall. The 13,354 commits merged up to 4.6-rc7 are a lot, but it seems unlikely that the total when 4.6-final comes out will exceed the 13,694 merged for 4.2, much less the 13,722 merged for 3.15. So the record set for 3.15 will, at the beginning of June, have held for a full two years.

Those commits were contributed by 1,661 developers, which is a new record, beating the 1,625 seen contributing to 4.3. 283 of those developers made their first commit to the kernel during this development cycle. The most active 4.6 developers were:

Most active 4.6 developers
By changesets
Arnd Bergmann2041.5%
Chaehyun Lim1971.5%
Oleg Drokin1651.2%
Jes Sorensen1311.0%
Amitoj Kaur Chawla1170.9%
Christian König1070.8%
Dennis Dalessandro1000.7%
Mauro Carvalho Chehab970.7%
Al Viro930.7%
Peter Hurley910.7%
Linus Walleij860.6%
Geert Uytterhoeven860.6%
Laxman Dewangan850.6%
Andy Lutomirski840.6%
Marc Zyngier840.6%
Laurent Pinchart840.6%
Namhyung Kim810.6%
Mike Rapoport810.6%
Bhaktipriya Shridhar800.6%
Tomi Valkeinen780.6%
By changed lines
Faisal Latif283274.3%
Dennis Dalessandro160342.4%
Mike Marshall154342.3%
Shraddha Barke141262.1%
Oleg Drokin79351.2%
Josh Poimboeuf79171.2%
Andrew Duggan66401.0%
John Crispin59140.9%
Tomi Valkeinen58930.9%
Archit Taneja57040.9%
Andrew F. Davis55130.8%
Jiri Pirko54100.8%
Santosh Shilimkar53380.8%
Alexandre Bounine51910.8%
Yuval Mintz50540.8%
James Simmons46190.7%
Laurent Pinchart45340.7%
Mauro Carvalho Chehab45330.7%
Sudeep Dutt43870.7%
Marc Zyngier42300.6%

Longtime kernel developer Arnd Bergmann found his way to the top of the "by changesets" column mainly through his ongoing work to eliminate warnings from the ARM kernel builds. Chaehyun Lim continues to work on the wilc1000 staging driver, Oleg Drokin did a lot of cleanups in the Lustre filesystem, Jes Sorensen continues to clean up the rtl8xxxu staging driver, and Amitoj Kaur Chawla made cleanups throughout the driver subsystem.

On the "lines changed" side, Faisal Latif got to the top of the list with the addition of the i40iw InfiniBand driver. Dennis Dalessandro worked on various RDMA drivers, Mike Marshall added the OrangeFS filesystem, and Shraddha Barke removed some unloved drivers from the staging tree.

The number of employers seen supporting kernel work remains steady at just over 200; this count has not changed significantly since the early 3.x days. The most active employers in this cycle were:

Most active 4.6 employers
By changesets
Intel200915.0%
(Unknown)135810.2%
Red Hat10437.8%
(None)6474.8%
Linaro5884.4%
Outreachy4133.1%
Samsung3902.9%
SUSE3642.7%
Renesas Electronics3362.5%
IBM3122.3%
AMD3072.3%
ARM2531.9%
Google2471.8%
(Consultant)2381.8%
Texas Instruments2301.7%
Oracle1911.4%
Code Aurora Forum1751.3%
Atmel1661.2%
NVidia1591.2%
Huawei Technologies1471.1%
By lines changed
Intel13199220.0%
(Unknown)432716.5%
Red Hat405896.1%
(None)290984.4%
Linaro192592.9%
IBM174552.6%
Outreachy174452.6%
Omnibond Systems171222.6%
Texas Instruments167792.5%
Code Aurora Forum144842.2%
Renesas Electronics142222.2%
Google141832.1%
AMD135812.1%
SUSE123041.9%
Samsung121071.8%
Oracle114411.7%
Mellanox109711.7%
ARM108111.6%
Facebook96421.5%
(Consultant)80861.2%

As usual, little has changed in this table. Lots of cleanup patches made their way into the staging tree as part of the application process for Outreachy internships; this time around, some of the Outreachy interns are employing Coccinelle scripts and increasing their productivity accordingly. One name that might be unfamiliar is Omnibond Systems — the company behind OrangeFS. Otherwise, it's mostly the names one usually sees in this place.

Reviewing Reviewed-by

Finally, let's take a quick look at Reviewed-by counts. A developer can offer a Reviewed-by tag after having reviewed a patch in depth; these tags are considered a sign that the patches in question have been closely examined and are of high quality. They are also there to credit the developers who spend time reviewing code — an important objective, since review bandwidth is one of the community's most limited resources. In the 4.6 development kernel, a total of 3,645 Reviewed-by tags were applied to patches; the most prolific sources of them were:

Most active 4.6 reviewers
Alex Deucher1554.3%
Mike Marciniszyn1413.9%
Ira Weiny1333.6%
Dennis Dalessandro1303.6%
Christoph Hellwig982.7%
Hannes Reinecke912.5%
Johannes Thumshirn822.2%
Oleg Drokin772.1%
Daniel Vetter722.0%
Ville Syrjälä681.9%
Krzysztof Kozlowski641.8%
Christoffer Dall541.5%
Christian König531.5%
Thomas Gleixner491.3%
Chris Wilson471.3%
Dean Luick441.2%
Maarten Lankhorst411.1%
James Simmons401.1%
Chunming Zhou371.0%
Laurent Pinchart361.0%

This table makes it clear that different developers have different views of how Reviewed-by should be used. The top reviewer is Alex Deucher, the maintainer for the AMD graphics drivers. Alex certainly reviews a lot of patches; in this case, though, most of the patches with his Reviewed-by tags also carried his Signed-off-by tags — applied when he accepted the patches for merging. It is normally understood that maintainers should review patches before applying them; most maintainers do not add a Reviewed-by tag for that work, but Alex does.

Out of the next three reviewers on the list, Mike Marciniszyn, Ira Weiny, and Dennis Dalessandro, only Mike appears in the MAINTAINERS file. They do have something in common, though, in that they all work for Intel. Patches generally come out of Intel with Reviewed-by tags from these developers (among others), often all three together, applied before the code has been seen by the rest of the world. We are clearly seeing the results of some sort of internal Intel review policy at work. There is no real way to know how thorough this review process is, other than to observe that Intel contributes a lot of patches and problems are rare.

The fifth entry in the list, Christoph Hellwig, typifies the sort of review that was envisioned when this tag was created. Nobody who has had Christoph's attention applied to a patch of theirs will have missed the fact that a serious review has taken place. The work of the other four reviewers named above may well be just as thorough and just as valuable, but, since it's not public review, there is no way to know for sure.

Of course, almost all of the review work that does take place in public still does not result in a Reviewed-by tag being applied to the patches involved. So it could be argued that this tag has never really achieved its purpose of documenting and crediting the review work that is being done.

The overall picture created by these numbers, though, is one of a development process that continues to function like a relatively well-tuned machine. The number of contributors continues to increase, the patch flow is steady, and there do not appear to be many process-scalability issues in sight.

Index entries for this article
KernelReleases/4.6


to post comments

Some numbers from the 4.6 development cycle

Posted May 12, 2016 18:43 UTC (Thu) by ianmcc (subscriber, #88379) [Link] (2 responses)

1,661 developers. How does that compare to something like the Windows kernel? I guess it is difficult to make a comparison, a lot of the work is probably in drivers and the development models are quite different. But 1661 seems like a large number, so it would be interesting to see some other stats (eg how many people does Microsoft employ to work on their kernel?).

Some numbers from the 4.6 development cycle

Posted May 12, 2016 19:48 UTC (Thu) by dlang (guest, #313) [Link] (1 responses)

Also keep in mind, that's the number of people who have changes in this release, the people who will have changes in the next release are not all the same.

some of this is people submitting small patches, some of it is people working on larger projects that don't show up until they are done.

There's also the part-time vs full-time question, so you really are comparing apples to oranges.

Some numbers from the 4.6 development cycle

Posted May 12, 2016 20:16 UTC (Thu) by dlang (guest, #313) [Link]

Some numbers from the 4.6 development cycle

Posted May 13, 2016 14:56 UTC (Fri) by andy_shev (subscriber, #75870) [Link]

Sometimes Acked-by tag implies Reviewed-by as well. For example I do the reviewe for the patches I Ack for the code I'm involved in though I'm not maintaining.


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