[go: nahoru, domu]

|
|
Subscribe / Log in / New account

Development statistics for the 4.13 kernel

Benefits for LWN subscribers

The primary benefit from subscribing to LWN is helping to keep us publishing, but, beyond that, subscribers get immediate access to all site content and access to a number of extra site features. Please sign up today!

By Jonathan Corbet
August 24, 2017
As of this writing, the 4.13 kernel appears headed toward release on September 3, after a nine-week development cycle. It must, therefore, be about time for a look at the statistics for this development cycle. The picture that results shows a fairly typical kernel cycle with, as usual, few surprises.

Midway between 4.13-rc6 and 4.13-rc7, 12,677 non-merge changesets had found their way into the mainline. That makes 4.13 the smallest cycle since 4.7, which finished with 12,283 changesets. Chances are, though, that this cycle will surpass 4.11 (12,724) by the time it is done. So, while there may be signs of a (northern hemisphere) summer slowdown, 4.13 remains generally comparable with its predecessors with respect to patch volume.

1,634 developers have contributed during this cycle, a significant drop from the record set with 4.12 (1,825) but comparable with 4.10 (1,647). The most active of those developers were:

Most active 4.13 developers
By changesets
Christoph Hellwig2522.0%
Mauro Carvalho Chehab1841.5%
Thomas Gleixner1511.2%
Arnd Bergmann1381.1%
Takashi Iwai1341.1%
Chris Wilson1301.0%
Colin Ian King1231.0%
Arvind Yadav1231.0%
Al Viro1170.9%
Masahiro Yamada1130.9%
Kuninori Morimoto1020.8%
Jakub Kicinski990.8%
Johannes Berg980.8%
Dan Carpenter930.7%
Vivien Didelot900.7%
Paul E. McKenney830.7%
Geert Uytterhoeven820.6%
Andy Shevchenko770.6%
Kees Cook760.6%
Nicholas Piggin720.6%
By changed lines
Alex Deucher27956729.9%
Mauro Carvalho Chehab322563.5%
Robert Bragg225112.4%
Steve Longerbeam124861.3%
Stanimir Varbanov112361.2%
Christoph Hellwig101871.1%
Michal Kalderon98181.1%
Yuval Mintz93731.0%
Lionel Landwerlin89601.0%
Igor Mitsyanko84850.9%
John Johansen78060.8%
Mika Westerberg70040.7%
Chris Wilson67230.7%
Ben Skeggs63050.7%
Hans de Goede59750.6%
Geert Uytterhoeven57220.6%
Gilad Ben-Yossef55800.6%
Al Viro54780.6%
Ilan Tayari52150.6%
Serge Semin49780.5%

The top contributor of changesets this time around was Christoph Hellwig, who made significant improvements all over the filesystem and block I/O layers. Mauro Carvalho Chehab continues to be a relentless generator of patches in his role as the media subsystem maintainer; many of his changes touched the documentation directory as well. Thomas Gleixner was busy in the interrupt-handling and timer code, Arnd Bergmann (as usual) contributed fixes all over the tree, and Takashi Iwai made many changes as the maintainer of the audio subsystem.

Once again, Alex Deucher topped the "lines changed" column by adding yet another massive set of AMD GPU register definitions. Robert Bragg, instead, added a bunch of i915 register configurations. Steve Longerbeam and Stanimir Varbanov both added media subsystem drivers.

As has been the case in recent cycles, the developers appearing in these lists are generally not working on the staging tree. That is a significant change from a few years ago, when staging work was the source of many of the changesets going into the mainline kernel. One might almost be tempted to believe that the staging tree has done what it was meant to do, and the bulk of those out-of-tree drivers have now been merged. More likely, though, is that this is just a lull in staging work; substandard drivers are in anything but short supply.

A minimum of 203 employers supported work on the code that was merged for 4.13, a fairly normal number (though, once again, a significant drop from 4.12, which had support from 233). The most active of those employers were:

Most active 4.13 employers
By changesets
Intel147411.6%
(None)8877.0%
(Unknown)7566.0%
Red Hat7505.9%
IBM5374.2%
SUSE4953.9%
Linaro4753.7%
Google4163.3%
AMD4103.2%
(Consultant)3893.1%
Renesas Electronics3312.6%
Samsung3232.5%
Mellanox2812.2%
Oracle2742.2%
ARM2652.1%
Free Electrons2321.8%
Canonical2031.6%
Cavium2011.6%
Broadcom1781.4%
linutronix1721.4%
By lines changed
AMD29697531.8%
Intel791798.5%
(None)532075.7%
Red Hat401664.3%
Samsung369624.0%
Cavium323973.5%
Linaro308703.3%
(Unknown)302953.2%
IBM211852.3%
Mellanox194412.1%
Renesas Electronics179461.9%
(Consultant)140051.5%
Free Electrons130431.4%
Mentor Graphics127681.4%
SUSE127421.4%
Google122881.3%
ARM114661.2%
Texas Instruments101491.1%
ST Microelectronics90621.0%
Broadcom89451.0%

Once again, there are few surprises here; these lists don't change much from one cycle to the next.

One thing we have occasionally commented on over the years is a perceived decrease in the contributions from developers working on their own time. The 887 changes known to be from volunteers in 4.13 make up 7% of the total, a relatively low number. But perhaps percentages are not the right unit here. Looking at the absolute count of changesets from volunteers since 3.0 was released in July 2011 reveals a trend like this:

[Changesets from
volunteers]

That plot does suggest an overall decrease in the number of patches received from developers working on their own time. But it may not be an entirely accurate picture. The table above also shows 756 changes coming from developers with unknown affiliation. There were 263 such developers participating in the 4.13 development cycle, contributing an average of just under three patches each; 165 of them contributed a single patch. One could well argue that the bulk of this group is highly likely to fit into the "volunteers" category. Some of them may well be doing kernel patches at work, but it's clearly not a significant part of their job.

If one plots the number of changesets coming from both known volunteers and shadowy mysterious developers, the result is:

[Changesets from
volunteers]

That line looks rather more level, suggesting that the number of changes contributed by volunteers has remained roughly the same over the last six years. Note that the overall changeset volume has increased significantly over this period; the 3.0 development cycle had 9,153, for example. So, while the volume of changes going into the kernel is increasing, the volume from volunteer developers cannot be said to be increasing with it — but, perhaps, it is not shrinking either.

Overall, the kernel-development machine continues to hum along, cranking out a new kernel every nine or ten weeks. The predictability of the process may lead to relatively boring statistics articles, but predictability is a good thing in a critical low-level system component.

Index entries for this article
KernelReleases/4.13


(Log in to post comments)

Development statistics for the 4.13 kernel

Posted Aug 27, 2017 13:21 UTC (Sun) by zanchey (guest, #94250) [Link] (4 responses)

I certainly wouldn't accuse this article of being boring, but reading it to a newborn has done an outstanding job of getting them to sleep.

Development statistics for the 4.13 kernel

Posted Aug 28, 2017 19:34 UTC (Mon) by rahvin (guest, #16953) [Link] (3 responses)

Did you really need to make that comment?

Development statistics for the 4.13 kernel

Posted Aug 29, 2017 0:49 UTC (Tue) by zanchey (guest, #94250) [Link]

I write in response to the conclusion of the article, and if you've got children you might recognise the enormous value of measured prose in settling them (and you).

Development statistics for the 4.13 kernel

Posted Aug 29, 2017 9:08 UTC (Tue) by lkundrak (subscriber, #43452) [Link] (1 responses)

Well, did you need to make this one?
Did I need to comment too?

Development statistics for the 4.13 kernel

Posted Aug 30, 2017 3:45 UTC (Wed) by pravinkc (guest, #115930) [Link]

Does anyone of us have to do anything?

Development statistics for the 4.13 kernel

Posted Aug 30, 2017 15:49 UTC (Wed) by jani (subscriber, #74547) [Link] (6 responses)

I humbly repeat my request to include the review and testing stats in the development statistics. https://lwn.net/Articles/718528/

Development statistics for the 4.13 kernel

Posted Aug 31, 2017 9:25 UTC (Thu) by andy_shev (subscriber, #75870) [Link] (5 responses)

Actually yes, I liked that one that has it.

Development statistics for the 4.13 kernel

Posted Aug 31, 2017 15:24 UTC (Thu) by deater (subscriber, #11746) [Link] (4 responses)

I thought that a report on the Reported-by: tag might be interesting because I might have a chance of making the list, but no, I'm not even in the top 15. Interestingly enough a robot is in the #1 spot.

Methodology:
git log v4.12..HEAD | grep Reported-by: | sort | uniq -c | sort -n

Development statistics for the 4.13 kernel

Posted Aug 31, 2017 17:40 UTC (Thu) by jani (subscriber, #74547) [Link] (3 responses)

I also think it's interesting to look behind the stats presented. "The top contributor of changesets this time around was Christoph Hellwig, who made significant improvements all over the filesystem and block I/O layers." I don't think it takes anything away from Christoph's accomplisments to acknowledge that a bunch of other people were involved in getting his changes merged:

$ git log v4.12..v4.13-rc7 --author=hch@lst.de | grep "[A-Za-z-]*-by:" | grep -v hch@lst.de | sed 's/[A-Za-z-]*-by: //' | sort | uniq -c | sort -rn | head
38 Jens Axboe <axboe@kernel.dk>
30 Jeff Layton <jlayton@redhat.com>
26 Trond Myklebust <trond.myklebust@primarydata.com>
22 Darrick J. Wong <darrick.wong@oracle.com>
19 Andy Shevchenko <andriy.shevchenko@linux.intel.com>
18 Sagi Grimberg <sagi@grimberg.me>
18 Amir Goldstein <amir73il@gmail.com>
14 Jens Axboe <axboe@fb.com>
12 Thomas Gleixner <tglx@linutronix.de>
10 Martin K. Petersen <martin.petersen@oracle.com>

Plus a long tail. I think only looking at the authorship gives a rather limited view of contributions to the kernel.

Development statistics for the 4.13 kernel

Posted Sep 1, 2017 15:35 UTC (Fri) by knobunc (guest, #4678) [Link] (2 responses)

It would be interesting to do a "top reviewers". Give some hard and unglamorous work some time in the spotlight.

-ben

Development statistics for the 4.13 kernel

Posted Sep 7, 2017 11:36 UTC (Thu) by kdave (subscriber, #44472) [Link] (1 responses)

But then hch would take the top spots as well! Here's the top 30 for 4.13:

182 Alex Deucher
127 Christoph Hellwig
89 Christian König
80 Andy Shevchenko
77 Florian Fainelli
72 Joonas Lahtinen
67 Andy Shevchenko
64 Hannes Reinecke
62 Chris Wilson
60 Laurent Pinchart
55 Geert Uytterhoeven
49 Takashi Sakamoto
48 Scott Benesh
47 Daniel Vetter
46 Simon Horman
46 David Sterba
45 Andrew Lunn
44 Tvrtko Ursulin
44 Johannes Thumshirn
42 Hawking Zhang
41 Maarten Lankhorst
39 Jan Kara
39 Darrick J. Wong
35 Neil Armstrong
35 Jeff Layton
34 Guenter Roeck
33 Sagi Grimberg
31 Linus Walleij
31 Brian Foster
27 Mika Westerberg

Development statistics for the 4.13 kernel

Posted Oct 5, 2017 22:12 UTC (Thu) by bvanassche (subscriber, #90104) [Link]

The statistics reported by my script are slightly different:
$ git log v4.12..v4.13 | sed -n 's/^ Reviewed-by: \([^<]*\)<.*/\1/p' | sort | uniq -c | sort -rn | head -n30
182 Alex Deucher
150 Andy Shevchenko
128 Christoph Hellwig
90 Christian König
77 Florian Fainelli
73 Joonas Lahtinen
68 Hannes Reinecke
66 Chris Wilson
63 Laurent Pinchart
55 Geert Uytterhoeven
50 Simon Horman
49 Takashi Sakamoto
48 Scott Benesh
48 Daniel Vetter
47 Tvrtko Ursulin
47 Guenter Roeck
46 David Sterba
45 Andrew Lunn
44 Johannes Thumshirn
43 Bart Van Assche
42 Hawking Zhang
41 Maarten Lankhorst
39 Jan Kara
39 Darrick J. Wong
38 Sagi Grimberg
35 Neil Armstrong
35 Jeff Layton
33 Linus Walleij
31 Brian Foster
27 Mika Westerberg


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