|
|
Subscribe / Log in / New account

4.11 Kernel development statistics

By Jonathan Corbet
April 19, 2017
Linus Torvalds recently let it be known that the 4.11-rc7 kernel prepatch had a good chance of being the last for this development series. So the time has come to look at this development cycle and the contributors who made it happen.

As of this writing, 12,546 non-merge changesets have been pulled into the mainline repository for 4.11, making this cycle more-or-less average for recent kernels. Those changesets were contributed by 1,723 developers and grew the kernel by nearly 300,000 lines. Note that the current record for the most developers participating is 1,729 for 4.9; if another half-dozen developers put in a fix for 4.11, that record could yet fall. Of the developers contributing to 4.11, 278 made their first contribution ever in this cycle.

The most active developers in the 4.11 cycle were:

Most active 4.11 developers
By changesets
Chris Wilson2261.8%
Arnd Bergmann1601.3%
Ingo Molnar1581.3%
Christoph Hellwig1150.9%
Takashi Iwai1100.9%
Guenter Roeck1010.8%
Bart Van Assche940.7%
Bhumika Goyal890.7%
Geert Uytterhoeven870.7%
Ville Syrjälä860.7%
James Hogan830.7%
Johan Hovold800.6%
Nikolay Borisov790.6%
Andy Shevchenko770.6%
Colin Ian King770.6%
Laurent Pinchart750.6%
Julia Lawall740.6%
Florian Fainelli720.6%
Eric Dumazet710.6%
Daniel Vetter700.6%
By changed lines
James Smart142882.2%
Ard Biesheuvel142152.2%
Selvin Xavier133932.1%
Greg Kroah-Hartman117051.8%
David VomLehn110851.7%
Rob Rice95391.5%
Eric Anholt94601.5%
Jakub Kicinski90241.4%
Chris Wilson89861.4%
Chad Dupuis88291.4%
Ingo Molnar77531.2%
Balbir Singh74511.1%
Maxime Ripard71101.1%
Ursula Braun66661.0%
Christoph Hellwig57400.9%
Rex Zhu57190.9%
Paul E. McKenney54970.8%
Jiri Pirko54070.8%
Quinn Tran53310.8%
Takashi Iwai48920.8%

In the "by changesets" column, Chris Wilson ended up on top with a body of work mostly focused on the Intel i915 driver. Arnd Bergmann continues to apply fixes all over the tree, Ingo Molnar (primarily) contributed a massive reworking of the sched.h header file, Christoph Hellwig did significant work all over the block I/O subsystem, and Takashi Iwai added many patches as part of his role as maintainer of the audio subsystem.

In the "by changed lines" column, James Smart did a lot of work on the lpfc SCSI driver. Ard Biesheuvel's work was mostly in optimized crypto algorithms for the ARM architecture, Selvin Xavier contributed three patches adding the "bnxt_re" RDMA-over-converged-Ethernet driver, Greg Kroah-Hartman deleted some unwanted staging code, and David VomLehn added the AQtion network driver.

The developers contributing to 4.11 were supported by at least 225 employers, the most active of which were:

Most active 4.11 employers
By changesets
Intel160812.8%
(Unknown)10718.5%
Red Hat9557.6%
(None)7986.4%
Linaro6245.0%
IBM4933.9%
SUSE4823.8%
Google3753.0%
(Consultant)3492.8%
Samsung3032.4%
Broadcom2962.4%
Mellanox2692.1%
Oracle2311.8%
AMD2071.6%
Renesas Electronics1971.6%
Huawei Technologies1971.6%
Facebook1871.5%
Imagination Technologies1601.3%
Canonical1561.2%
Code Aurora Forum1461.2%
By lines changed
Intel8006912.3%
Broadcom481637.4%
(Unknown)440466.8%
(None)433116.6%
Linaro375315.8%
IBM332865.1%
Red Hat319554.9%
Cavium283124.3%
(Consultant)249743.8%
SUSE150202.3%
ST Microelectronics147092.3%
Mellanox144742.2%
Google121851.9%
Linux Foundation117891.8%
AMD113971.7%
Samsung108451.7%
Free Electrons102581.6%
Code Aurora Forum94551.5%
Netronome Systems91721.4%
Facebook90231.4%

This table has gotten pretty boring over the years; it tends not to change much from one cycle to the next.

Developing code is important, but so are reviewing, testing, and reporting bugs. The kernel process has long had the mechanisms to track these contributions, though they are not as heavily used as they could be. The Reviewed-by tag records a reviewer's contribution explicitly; the reviewers most credited in this way in 4.11 were:

Top reviewers in 4.11
Hannes Reinecke126
Joonas Lahtinen125
Alex Deucher106
Christoph Hellwig106
Chris Wilson92
Johannes Thumshirn77
Geert Uytterhoeven68
Andreas Dilger68
Christian König63
Tvrtko Ursulin60
Daniel Vetter57
Tomas Henzl56
Andy Shevchenko55
Laurent Pinchart50
Oleg Drokin50
Doug Oucharek46
Linus Walleij45
Liu Bo42
Greg Kroah-Hartman38
Darrick J. Wong38
Chao Yu38
Josh Triplett37

Hannes Reinecke's review work was focused on the SCSI subsystem, while Joonas Lahtinen reviewed i915 patches. Each of them managed to review 1% of the total patch flow going into the 4.11 kernel — two patches per day for (what will probably be) a 63-day development cycle.

Of the 12,546 changesets merged for 4.11, 3,099 contained Reviewed-by tags. Needless to say, those tags do not document all of the review work that happened during this development cycle. Much review activity does not result in the addition of a tag of any type. When patches are reviewed by the subsystem maintainer that ultimately applies them, the result is usually a Signed-off-by tag instead. If one looks at those tags when applied by developers who were not the author of the patch, the result is this:

Top non-author signoffs in 4.11
David S. Miller147312.4%
Greg Kroah-Hartman9618.1%
Andrew Morton4083.4%
Mark Brown3132.6%
Martin K. Petersen3082.6%
Ingo Molnar2722.3%
Kalle Valo2412.0%
Mauro Carvalho Chehab2311.9%
Doug Ledford2071.7%
Jens Axboe2031.7%
Michael Ellerman1871.6%
Linus Walleij1721.4%
Herbert Xu1661.4%
Alex Deucher1641.4%
Daniel Vetter1521.3%
Jonathan Cameron1291.1%
Rafael J. Wysocki1291.1%
David Sterba1271.1%
Ralf Baechle1261.1%
Ulf Hansson1241.0%

Here, it is hard to separate review activity from the overall level of activity in the relevant subsystems. But a rough correlation will certainly exist, meaning that the developers above are looking at a huge number of patches. This work often goes unsung, but it is a crucial part of the kernel development process; without it, the process would not run as smoothly or as quickly as it does now.

Testing and bug reporting can also be tracked by tags in the associated patches. Looking at those tags for 4.11 yields this table:

Testing and bug reporting in 4.11
Reported-by tags
Dmitry Vyukov476.9%
Dan Carpenter476.9%
kbuild test robot314.5%
Greg Kroah-Hartman121.8%
Andrey Konovalov101.5%
Al Viro91.3%
Colin Ian King91.3%
Ben Hutchings71.0%
Bart Van Assche71.0%
Jay Vana71.0%
Russell King60.9%
Marc Dionne60.9%
Linus Torvalds60.9%
David Binderman60.9%
Geert Uytterhoeven50.7%
Mike Galbraith50.7%
Dave Jones50.7%
Ville Syrjälä40.6%
Dexuan Cui40.6%
Anton Blanchard40.6%
Tested-by tags
Andrew Bowers7010.0%
Tomasz Nowicki172.4%
Bharat Bhushan152.2%
Arnaldo Carvalho de Melo142.0%
Krishneil Singh142.0%
Larry Finger131.9%
Mark Rutland121.7%
Florian Vaussard101.4%
Stan Johnson101.4%
Aaron Brown101.4%
David Lechner91.3%
Omar Sandoval81.1%
Jarkko Sakkinen81.1%
Xiaolong Ye81.1%
Jeremy McNicoll81.1%
Neil Armstrong81.1%
Geert Uytterhoeven71.0%
Stefan Wahren71.0%
Y.C. Chen71.0%
Laurent Pinchart60.9%

Again, most of the activity out there does not result in explicit tags, especially when it comes to testing — many testers will say nothing if they do not run into problems. Regardless of whether testing and reporting are credited or not, they are critical to our ability to deliver a solid kernel over a nine or ten-week development cycle.


Index entries for this article
KernelReleases/4.11


to post comments

4.11 Kernel development statistics

Posted Apr 19, 2017 19:38 UTC (Wed) by Beolach (guest, #77384) [Link] (2 responses)

Would the Reported-by / Tested-by tags be more interesting for stable / LTS kernel updates?

4.11 Kernel development statistics

Posted Apr 20, 2017 8:20 UTC (Thu) by gregkh (subscriber, #8) [Link] (1 responses)

I doubt it as I don't add those types of markings to the patches added to the stable/lts kernels, I just use the original patch text instead.

And very rarely do people test individual stable patches, when they do, I do add their name to the patch, but it's not normal to have happen...

People do test the whole release, but where do I put that information?

4.11 Kernel development statistics

Posted Apr 20, 2017 20:06 UTC (Thu) by PaXTeam (guest, #24616) [Link]

> People do test the whole release, but where do I put that information?

how about the last commit that updates the kernel version itself?

Most active employers title needs an update

Posted Apr 20, 2017 14:46 UTC (Thu) by xyz (subscriber, #504) [Link] (2 responses)

I have noticed a typo in the title of the table "Most active employers" that still says:

Most active 4.10 employers

That is funny because it is related with the the remark at the end of the table:
"This table has gotten pretty boring over the years; it tends not to change much from one cycle to the next."

Most active employers title needs an update

Posted Apr 20, 2017 14:58 UTC (Thu) by jake (editor, #205) [Link] (1 responses)

> That is funny because it is related with the the remark at the end of the table:
> "This table has gotten pretty boring over the years; it tends not to change much from one cycle to the next."

Indeed :)

typo fixed, thanks for the report (and chuckle)

jake

Most active employers title needs an update

Posted Apr 20, 2017 15:18 UTC (Thu) by xyz (subscriber, #504) [Link]

Thank you for the quick fix. :-)

4.11 Kernel development statistics

Posted Apr 20, 2017 15:12 UTC (Thu) by lpremoli (guest, #94065) [Link]

Do you think it would be possible to add also some hint on what each company / individuals are wokring on? I mean is it possible o highlight also the Top Trends of the Top contributor Companies/Individuals? Thanks, Luca

4.11 Kernel development statistics

Posted Apr 21, 2017 18:01 UTC (Fri) by vomlehn (guest, #45588) [Link] (1 responses)

My apologies. I wound up on the list of "Most active 4.11 developers" (under "By changed lines") by accident. I was helping Aquantia's driver team through the process of getting their work accepted in the kernel. I did code reviews, helped them conform with kernel style standards, and did the final polish before submitting the patch. That's how I ended up with the mechanically-derived credit. The real hard work of driver development was done by:

  • Alexander Loktionov
  • Dmitrii Tarakanov
  • Pavel Belous
  • Dmitry Bezrukov

Alexander should really be credited as first among peers, with substantial contributions from the others.

4.11 Kernel development statistics

Posted Apr 24, 2017 9:29 UTC (Mon) by andy_shev (subscriber, #75870) [Link]

Perhaps it would be fixed by using correct SoB and authorship chains?


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