|
|
Subscribe / Log in / New account

Some 3.13 development statistics

Did you know...?

LWN.net is a subscriber-supported publication; we rely on subscribers to keep the entire operation going. Please help out by buying a subscription and keeping LWN on the net.

By Jonathan Corbet
January 8, 2014
As of this writing, the current development kernel snapshot is 3.13-rc6. Linus has said that this cycle will almost certainly go to -rc8, even if things look stable (as they indeed do) to avoid opening the merge window while he is attending linux.conf.au. Your editor, wishing to avoid writing highly technical articles during that period for exactly the same reason, deems this the right time for our traditional, non-technical look at the 3.13 development cycle and where the patches came from this time around.

There have been just under 12,000 non-merge changesets pulled into the mainline kernel for 3.13 so far; the total will almost certainly exceed 12,000 by the time the final release happens. 3.13 is thus a significantly busier cycle than its immediate predecessors; indeed, only three previous cycles (2.6.25, 3.8, and 3.10) have brought in more changes. Those changes, which added 446,000 lines and deleted 241,000 for a net growth of 205,000 lines, were contributed by 1,339 developers. The most active of those developers were:

Most active 3.13 developers
By changesets
Sachin Kamat3613.0%
Jingoo Han3232.7%
Marcel Holtmann2251.9%
Viresh Kumar1691.4%
Lars-Peter Clausen1501.3%
H Hartley Sweeten1471.2%
Ville Syrjälä1451.2%
Joe Perches1351.1%
Mark Brown1221.0%
Takashi Iwai1201.0%
Lee Jones1130.9%
Linus Walleij1030.9%
Peter Zijlstra920.8%
Wei Yongjun880.7%
Ben Widawsky880.7%
Al Viro870.7%
Ian Abbott850.7%
Russell King830.7%
Thierry Reding800.7%
Ingo Molnar760.6%
By changed lines
Ben Skeggs190143.5%
Greg Kroah-Hartman173783.2%
Jovi Zhangwei163773.0%
Guenter Roeck130132.4%
Eugene Krasnikov100821.8%
Patrick McHardy88631.6%
Joe Perches70761.3%
Ralf Baechle66871.2%
Archit Taneja62461.1%
Akhil Bhansali62141.1%
Aaro Koskinen61641.1%
Ard Biesheuvel58141.1%
Dave Chinner53111.0%
David Howells52871.0%
Russell King51250.9%
Hisashi Nakamura46050.8%
Ian Abbott44520.8%
Kent Overstreet43490.8%
Thierry Escande42360.8%
Jens Axboe37450.7%

Sachin Kamat's and Jongoo Han's extensive janitorial work throughout the driver subsystem put them in the top two positions for changesets merged for the second cycle in a row. Marcel Holtmann did extensive surgery in the Bluetooth layer, Viresh Kumar did a lot of cleanup work in the cpufreq subsystem, and Lars-Peter Clausen did a lot of development in the driver tree, focusing especially on industrial I/O and audio drivers.

In the "lines changed" column, Ben Skeggs's work is concentrated, as always, on the nouveau driver. Greg Kroah-Hartman and Jovi Zhangwei do not properly belong on the list this month; they show up as a result of the addition of ktap to the staging tree (by Jovi) and its subsequent removal (by Greg). Guenter Roeck removed support for the Renesas H8/300 architecture, and Eugene Krasnikov contributed a single patch adding a driver for Qualcomm WCN3660/WCN3680 wireless adapters. Patrick McHardy's #6 position, resulting from the addition of the nftables subsystem, also merits a mention.

A minimum of 217 companies supported work on the 3.13 kernel; the most active of those were:

Most active 3.13 employers
By changesets
Intel142811.9%
(None)132311.1%
Linaro11669.7%
Red Hat10829.0%
Samsung5945.0%
(Unknown)5704.8%
IBM4193.5%
(Consultant)3422.9%
SUSE3282.7%
Texas Instruments2632.2%
Outreach Program for Women2181.8%
Freescale2061.7%
Google1981.7%
NVidia1801.5%
Vision Engraving Systems1471.2%
Oracle1351.1%
Renesas Electronics1231.0%
Free Electrons1211.0%
Huawei Technologies1191.0%
ARM1110.9%
By lines changed
Red Hat6358311.7%
Intel5978011.0%
(None)514589.4% 11.0%
Linaro320545.9%
(Unknown)267124.9%
Texas Instruments202193.7%
Linux Foundation182623.4%
Huawei Technologies181823.3%
IBM154352.8%
(Consultant)148022.7%
Samsung147392.7%
Ericsson137222.5%
NVidia108842.0%
Astaro88631.6%
Wind River84211.5%
Renesas Electronics73371.3%
SUSE72301.3%
Fusion-IO69561.3%
Western Digital65901.2%
Nokia64791.2%

The percentage of contributions from volunteers is up a bit this time around, but not by enough to suggest any real change in its long-term decline. Perhaps the biggest surprise here, though, is that, for the first time, Red Hat has been pushed down in the "by changesets" column by Linaro. If there was ever any doubt that the mobile and embedded industries are playing an ever larger role in the development of the kernel, this should help to dispel them. That said, if one looks at the employers of the subsystem maintainers who merged these patches, the picture looks a bit different:

Employers with the most non-author signoffs
Red Hat211519.2%
Intel170415.5%
Linux Foundation128211.6%
Linaro9128.3%
Google5535.0%
Samsung4644.2%
(None)4033.7%
Texas Instruments3503.2%
Novell3483.2%
IBM2892.6%

The situation is changing here, with the mobile/embedded sector having a bigger presence than it did even one year ago, but, for the most part, entry into subsystem trees is still controlled by developers working for a relatively small number of mostly enterprise-oriented companies.

Finally, it can be interesting to look at first-time contributors — developers whose first patch ever went into 3.13. There were 219 of these first-time contributors in this development cycle. Your editor decided to look at the very first patch from each first-time contributor and see which files were touched. These changes are spread out throughout the kernel tree, but the most common places for first-time contributors to make their first changes in 3.13 were:

DirectoryContributors
drivers/staging24
drivers/net21
include21
net19
arch/arm14
drivers/gpu10
arch/powerpc10
arch/x867
drivers/media7
Documentation7

One of the justifications behind the staging tree was that it would serve as an entry point for new developers; these numbers suggest that it is working. That said, if one looks at longer periods, more new contributors work in drivers/net than anywhere else.

Another interesting question is: what is the employment situation for first-time contributors to the kernel? Are new kernel hackers still volunteers, or do they have jobs already? The numbers are hazy, but there are still some conclusions that can be drawn:

EmployerCount
(Unknown)97
Intel 21
Huawei Technologies 6
Samsung 6
Linaro 5
(None) 4
AMD 3
Texas Instruments 3
Outreach Program for Women3

Another way to put this information is that 118 of the first-time contributors in 3.13 were working for companies, 97 of them were unknown, and four were known to be volunteers. Many (but not all) of the unknowns will eventually turn out to have been working on their own time. But, even if every single one of them were a volunteer, we would still have more first-time contributors coming from companies than working on their own. In a time when experienced kernel developers can be hard to hire, companies will have little choice but to grow their own; some companies, clearly, are working to do just that.

And that, in turn, suggests that the long-term decline in volunteer contributions may not be a big problem in the end. Getting code into the kernel remains a good way to get a job, but, it seems, quite a few developers are successful at getting the job first, and contributing afterward. With luck, that will help us to continue to have a stream of new developers coming into the kernel development community.

Index entries for this article
KernelReleases/3.13


(Log in to post comments)

Some 3.13 development statistics

Posted Jan 9, 2014 19:24 UTC (Thu) by jani (subscriber, #74547) [Link]

It would be interesting to occasionally have similar stats on the commits backported to the stable trees. The credits to the individuals and companies doing the job would be well deserved.

Some 3.13 development statistics

Posted Jan 10, 2014 4:26 UTC (Fri) by gregkh (subscriber, #8) [Link]

Um, I do the backporting to the stable trees, it's almost never the original author or developer. All that is needed is to mark the patch as a stable patch, and my tools handle it semi-automatically.

So who do you credit for something like that, my tools?

Some 3.13 development statistics

Posted Jan 10, 2014 5:31 UTC (Fri) by jani (subscriber, #74547) [Link]

Your tools deserve all the credit! ;)

I did mean statistics on the upstream bug fix commits that are stable worthy and eventually get backported. If you don't think that, with some insights on the data, would not be interesting, I'd like to know why.

Some 3.13 development statistics

Posted Jan 10, 2014 5:38 UTC (Fri) by gregkh (subscriber, #8) [Link]

Because bugfixes that can meet the stable_kernel_rules.txt are not a good indicator of major development efforts.

There's also a bunch of minor patches that just add device ids and quirks to systems, while very useful and needed, what do they show?

But feel free to prove me wrong, the data is all public, have fun with it!

Some 3.13 development statistics

Posted Jan 10, 2014 5:39 UTC (Fri) by gregkh (subscriber, #8) [Link]

Also, not all subsystems properly mark fixes for the stable trees, some not at all, some a bunch. That's usually up to the subsystem maintainer, so you would be evaluating the effort of the maintainer as well, and usually not the original developer.

Some 3.13 development statistics

Posted Jan 9, 2014 20:36 UTC (Thu) by rbrito (guest, #66188) [Link]

There is one thing that is interesting to me, given the current state of affairs: Nokia is present in these "top scores" lists, in particular, in the number of lines changed.

Are they working on anything specific in the tree? Are they returning to Linux? Anything else?

Some 3.13 development statistics

Posted Jan 10, 2014 12:15 UTC (Fri) by andy_shev (subscriber, #75870) [Link]

I think this is a result of Aaro's work (see statistics by individuals) who is working for NSN.


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