Content-Length: 39546 | pFad | http://lwn.net/Articles/1004998/

Development statistics for 6.13 [LWN.net]
|
|
Subscribe / Log in / New account

Development statistics for 6.13

By Jonathan Corbet
January 20, 2025
The 6.13 development cycle ended on January 19 with the release of the 6.13 kernel. This cycle was, on its surface, one of the slowest we have seen in some time; the LWN merge-window summaries (part 1, part 2) and the KernelNewbies 6.13 page can be consulted for a refresher on all it contains. Here, instead, we will take our usual look at where all of those changes came from.

The 6.13 kernel cycle brought in 12,928 non-merge changesets from 2,001 developers. The changeset count is noteworthy for being the lowest since 5.15 (12,377 changesets) in 2021. If one looks at a plot of changeset traffic for each kernel release (taken from the LWN Kernel Source Database), one sees:

[Changeset counts per
  kernel release]

The immediate impression is that kernel development activity has gone into a decline since the 6.7 release (January 2024) hit a record with 17,284 changesets. Interestingly, though, a plot of the number of developers participating in each release tells a slightly different story:

[Developers per
  kernel release]

The 2,001 developers who contributed to 6.13 are somewhat short of the record (2,090) set with 6.2 in 2023, but the previous release (6.12, at 2,074 developers) came close. Kernel developers may be merging fewer changesets at the moment, but that does not necessarily mean that less work is being done and, in any case, there are as many people working on the kernel as there has ever been.

The most active developers this time around were:

Most active 6.13 developers
By changesets
Thomas Zimmermann 1851.4%
Andy Shevchenko 1581.2%
Sean Christopherson 1471.1%
Jani Nikula 1421.1%
Darrick J. Wong 1130.9%
Christoph Hellwig 1120.9%
Dmitry Baryshkov 1110.9%
Javier Carrasco 1110.9%
Thomas Weißschuh 1020.8%
Ian Rogers 990.8%
Dr. David Alan Gilbert 910.7%
Thomas Gleixner 900.7%
Philipp Hortmann 840.6%
Ville Syrjälä 820.6%
Masahiro Yamada 810.6%
Uwe Kleine-König 800.6%
Dmitry Torokhov 800.6%
Bartosz Golaszewski 790.6%
Mark Brown 790.6%
Kuniyuki Iwashima 780.6%
By changed lines
Philipp Hortmann 7640710.0%
Jan Kara 328304.3%
Dave Penkler 293273.8%
Johannes Berg 261043.4%
Dmitry Baryshkov 118471.6%
Bitterblue Smith 105911.4%
Daniel Machon 98781.3%
Hans Verkuil 94901.2%
Marek Vasut 82821.1%
Detlev Casanova 81211.1%
Andy Shevchenko 77551.0%
Darrick J. Wong 75661.0%
Konrad Dybcio 66610.9%
Taniya Das 58910.8%
Ian Rogers 58310.8%
Dr. David Alan Gilbert 55700.7%
Ivaylo Ivanov 54690.7%
Tomi Valkeinen 52780.7%
Jani Nikula 50380.7%
Zong-Zhe Yang 48320.6%

Thomas Zimmermann topped the by-changesets column with a long list of improvements throughout the graphics subsystem. Andy Shevchenko contributed refactoring and cleanups over much of the driver subsystem. Sean Christopherson continued the ongoing refactoring of the KVM subsystem. Jani Nikula contributed many changes to the Intel i915 graphics driver, and Darrick Wong worked extensively in the XFS filesystem, with much of that work going toward online filesystem-checking functionality.

In the lines-changed column, Philipp Hortmann removed a number of old wireless-network drivers. Jan Kara removed the ReiserFS filesystem. Dave Penkler added the GPIB driver subsystem to the staging tree. Johannes Berg also joined the wireless-driver-removal party, and Dmitry Baryshkov added support for a number of Qualcomm clocks.

If the 6.13 development was a bit quieter than usual, some of the reasons why can be seen in the above list. The extensive refactoring work that has created large changeset counts in previous kernels is mostly absent this time around. The massive amdgpu header-file contributions that have bloated past kernels are also not present in 6.13. Instead, we are seeing the steady pace of development that is always happening, but which can be obscured in the statistics by those larger changes.

Just over half (51.3%) of the commits merged for 6.13 included at least one Reviewed-by tag, but only 8% had Tested-by tags. The top testers and reviewers in 6.13 were:

Test and review credits in 6.13
Tested-by
Daniel Wheeler 14811.9%
Dmitry Osipenko 856.8%
Alex Bennée 554.4%
Neil Armstrong 473.8%
Pucha Himasekhar Reddy 302.4%
Gary Guo 191.5%
Nathan Chancellor 151.2%
Randy Dunlap 151.2%
Nicolin Chen 141.1%
Serge Semin 131.0%
Steev Klimaszewski 131.0%
Philipp Zabel 121.0%
Chris Healy 121.0%
Leo Yan 110.9%
Geert Uytterhoeven 100.8%
Rob Clark 100.8%
Rajneesh Bhardwaj 100.8%
Arnaldo Carvalho de Melo 100.8%
Reviewed-by
Christoph Hellwig 2162.5%
Simon Horman 2112.4%
Krzysztof Kozlowski 1972.3%
Dmitry Baryshkov 1191.4%
Ilpo Järvinen 1121.3%
Eric Dumazet 1111.3%
Rodrigo Vivi 951.1%
Rob Herring 941.1%
Darrick J. Wong 911.1%
Andy Shevchenko 911.1%
AngeloGioacchino Del Regno 861.0%
Geert Uytterhoeven 841.0%
Neil Armstrong 810.9%
Ville Syrjälä 810.9%
David Sterba 780.9%
Jason Gunthorpe 780.9%
Christian König 760.9%
Laurent Pinchart 750.9%

These results do not change much from one release to the next; the people who do this work are in it for the long haul. LWN subscribers may see this KSDB page for more information on the testers, reviewers, and bug reporters for 6.13.

Work on 6.13 was supported by 212 employers (that we know of), a typical number. The top employers were:

Most active 6.13 employers
By changesets
Intel148211.4%
(Unknown)11438.8%
Google9777.5%
Red Hat6985.4%
AMD6445.0%
Linaro6264.8%
(None)5864.5%
SUSE4223.3%
Huawei Technologies3822.9%
Meta3442.6%
Oracle3402.6%
IBM3162.4%
Qualcomm2712.1%
Renesas Electronics2572.0%
NVIDIA2311.8%
NXP Semiconductors2251.7%
Linutronix2121.6%
Arm2101.6%
BayLibre2061.6%
(Consultant)1991.5%
By lines changed
(Unknown)9159912.0%
Intel8224710.8%
Emerson7640710.0%
SUSE423475.5%
Qualcomm390535.1%
Linaro316384.1%
Google304874.0%
AMD284413.7%
Red Hat267273.5%
(None)243703.2%
Oracle152852.0%
Meta151142.0%
Collabora149732.0%
IBM138801.8%
Microchip Technology Inc.136581.8%
Realtek126851.7%
NVIDIA117181.5%
BayLibre106541.4%
Cisco98641.3%
NXP Semiconductors91851.2%

Here, too, there are not many surprises to be found.

There were a number of significant changes in 6.13; the addition of lazy preemption and a lot of important Rust infrastructure may, over time, come to be seen as some of the most important. But the removals this time around are also significant. ReiserFS was once the brightest light among Linux filesystems; it was the first to bring journaling, among other things. It has long since been surpassed and gone out of use, but its role should not be forgotten.

The removal of the old wireless drivers also marks the end of an era of sorts. When Linux first started supporting wireless network interfaces, they were treated much like Ethernet interfaces with a few extra parameters to tweak. The "wireless extensions" interface was added to enable that tweaking. It did not take long to realize that wireless interfaces needed to be treated as a different class of device, and the networking subsystem moved in that direction. But the wireless extensions, as a user-facing interface, had to be supported for many years despite its inability to perform all of the necessary management functions for modern network adapters. Only with 6.13 has it been possible, finally, to remove that support.

ReiserFS was introduced in 2.4.0.4 in 2001, and the wireless extensions came with 2.1.15 in 1996. This kernel release, too, surely includes code that will come to be seen, decades from now, as outmoded and ready for removal. But there will be code to replace it; as of this writing, there are just short of 9,000 changesets in linux-next waiting to be merged for 6.14. That release, too, seems unlikely to set any records for change volume. Even below its peak rate, though, the kernel community is a busy place.
Index entries for this article
KernelReleases/6.13


to post comments

Holidays

Posted Jan 20, 2025 19:44 UTC (Mon) by willy (subscriber, #9762) [Link] (2 responses)

I'd suggest the timing of Xmas / Gregorian New Year had a large effect on the 10% reduction in patches in linux-next. Taking three weeks out of the middle of the development cycle was not helpful. Several of my patches ended up missing this merge window because of it.

Holidays

Posted Jan 20, 2025 21:57 UTC (Mon) by pbonzini (subscriber, #60935) [Link] (1 responses)

Wouldn't that be visible in 6.14 rather than 6.13?

Holidays

Posted Jan 20, 2025 21:59 UTC (Mon) by pbonzini (subscriber, #60935) [Link]

Ah indeed you're talking about lunux-next, not about 6.13 having "the lowest [number of commits] since 5.15".

Lines-changed algo?

Posted Jan 21, 2025 14:56 UTC (Tue) by andy_shev (subscriber, #75870) [Link] (6 responses)

I'm puzzled by how the lines-changed algo works. My simple `git log --numstat ...` approach gives (slightly in some cases) bigger values:

Philipp Hortmann 76514
Jan Kara 32848
...
Dmitry Baryshkov 14785
...
Andy Shevchenko 9006
...

Lines-changed algo?

Posted Jan 21, 2025 16:07 UTC (Tue) by mathstuf (subscriber, #69389) [Link] (1 responses)

Do you have some level of copied/moved code detection enabled?

Lines-changed algo?

Posted Jan 23, 2025 20:22 UTC (Thu) by andy_shev (subscriber, #75870) [Link]

Yes, `-M`, but even with `-M -C` still different numbers.

Lines-changed algo?

Posted Jan 22, 2025 8:59 UTC (Wed) by taladar (subscriber, #68407) [Link] (3 responses)

Maybe they use one of the options to ignore white space changes?

Lines-changed algo?

Posted Jan 23, 2025 20:23 UTC (Thu) by andy_shev (subscriber, #75870) [Link] (2 responses)

Do you believe we produced N thousands lines of whitespaces (the difference between LWN statistics and mine)? :-)

Lines-changed algo?

Posted Jan 28, 2025 12:12 UTC (Tue) by taladar (subscriber, #68407) [Link] (1 responses)

Thousands of lines of white space changes are not that unusual if e.g. something is wrapped in a new if and then re-indented or some similar change was applied all over the code base.

Lines-changed algo?

Posted Jan 31, 2025 13:30 UTC (Fri) by andy_shev (subscriber, #75870) [Link]

It's still rare, and on top of that I precisely know what I have done in that release (most LoC changes came from removing old GPL boilerplate texts, no adding/removing whitespaces). I have just even checked by adding these to my script: "-C -D --ignore-all-space", still it gives 8790 (without 9006), but statistics shows 7755, I beleive there is a mystery (bug or feature?) in the LWN scripts. Full script for the reference I have used:
git log -M -C -D --author="Andy Shevchenko" --ignore-all-space --pretty="" --numstat v6.12..v6.13
awk RS="\n" {
	 	 for (i=0; i < int(NF / 3); i++) {
	 	 	 sum += $(3*i+1) + $(3*i+2)
	 	 }
	 } END { print sum }
I even went further and cut the filenames from the `git log` output to be sure we have only numbers and calculated a sum using `bc`, same result.

Emerson

Posted Jan 21, 2025 21:24 UTC (Tue) by happylemur (subscriber, #95669) [Link]

In case anyone else was confused like me, Emerson seems not to refer to Emerson Radio[1], erstwhile maker of radios and TVs, but rather Emerson Electric[2], which is in networking equipment (and data acquisition after buying National Instruments).

1. https://en.wikipedia.org/wiki/Emerson_Radio
2. https://en.wikipedia.org/wiki/Emerson_Electric

Self reviews

Posted Jan 29, 2025 8:32 UTC (Wed) by krzk (subscriber, #105148) [Link] (1 responses)

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/...

That's how you appear on lwn :). Self-reviewed from the author, tested-by and all this for change in version number. :)

Self reviews

Posted Jan 29, 2025 15:27 UTC (Wed) by jan.kara (subscriber, #59161) [Link]

No, it isn't self-reviewed by the author. The review comes from the maintainer. And tested-by from yet another person. They are all from the same company but I don't think that matters much for driver code. For some larger common infrastructure, it would be a bit more questionable.


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









ApplySandwichStrip

pFad - (p)hone/(F)rame/(a)nonymizer/(d)eclutterfier!      Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

Fetched URL: http://lwn.net/Articles/1004998/

Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy