Linux 4.12 Gained A Lot Of Weight: More Than One Million New Lines

Written by Michael Larabel in Linux Kernel on 13 May 2017 at 11:08 AM EDT. 27 Comments
LINUX KERNEL
With big merges this cycle from the DRM additions, a lot of new staging code, and more, the Linux 4.12 kernel is a bit heavier... Here's some numbers.

Curious how Linux 4.12 sizes in with the merge window closing this weekend and all major code pulled for it, here are some Git statistics I ran this morning on the tree for seeing how much 4.12 has grown over Linux 4.11.

When running cloc on the Linux Git tree this morning:
---------------------------------------------------------------------------------------
Language                             files          blank        comment           code
---------------------------------------------------------------------------------------
C                                    24916        2429995        2199870       12338749
C/C++ Header                         19305         475040         867542        3370855
Assembly                              1433          49216         114598         247706
JSON                                   126              0              0          82542
make                                  2327           8554           8102          36748
Perl                                    50           5064           3741          26221
Bourne Shell                           241           2896           4030          14610
Python                                  69           2233           2619          12837
HTML                                     3            564              0           4723
yacc                                     9            682            357           4530
lex                                      8            302            300           1907
C++                                      7            287             71           1838
Bourne Again Shell                      46            387            315           1719
awk                                     12            185            170           1510
Markdown                                 1            220              0           1077
TeX                                      1            108              3            904
NAnt script                              2            158              0            594
Pascal                                   3             49              0            231
Objective C++                            1             55              0            189
m4                                       1             15              1             95
XSLT                                     6             13             27             71
CSS                                      1             14             23             35
vim script                               1              3             12             27
sed                                      3              2             30             21
Windows Module Definition                1              0              0              8
---------------------------------------------------------------------------------------
SUM:                                 48573        2976042        3201811       16149747
---------------------------------------------------------------------------------------

Or a total of 16.1 million detected lines of code, 3.2 million lines of comments, and 2.9 million blank lines spread in total across 48,753 files.

If looking at the churn over the past two weeks for the 4.12 merge window: 11870 files changed, 1323490 insertions(+), 298549 deletions(-). So over the past two weeks there have been 1.32 million lines of new code and 298k lines of deleted code, or a net gain of 1,024,941 lines.

In comparison, from v4.10 to v4.11-rc1 was: 11933 files changed, 524463 insertions(+), 239325 deletions(-). Or a net gain last merge window of just 285,138 lines. From v4.9 to v4.10-rc1 meanwhile was: 11468 files changed, 786937 insertions(+), 298643 deletions(-) or a net gain of 488,294 lines. So the amount of new code for Linux 4.12 is more than double the past two merge windows combined!

Long story short, Linux 4.12 will be a pretty big kernel! Stay tuned for my Linux 4.12 feature overview this weekend followed by various benchmarks once 4.12-rc1 has been released.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week