[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20240109134053.33d317dd@kernel.org>
Date: Tue, 9 Jan 2024 13:40:53 -0800
From: Jakub Kicinski <kuba@...nel.org>
To: netdev@...r.kernel.org, netdev-driver-reviewers@...r.kernel.org
Subject: [ANN] netdev development stats for 6.8
Intro
-----
We have posted our pull requests with networking changes for the 6.8
kernel release earlier today. As is tradition here are the development
statistics based on mailing list traffic on netdev@...r.
These stats are somewhat like LWN stats:
https://lwn.net/Articles/956765/
but more focused on review participation.
Changes in methodology
----------------------
After a few releases of laziness, I took a day to work on the code.
First and perhaps most importantly I added workarounds to the code
grouping emails into threads. 3% of emails which would previously
not get threaded now does, which should help reviewer scores.
I also implemented a fairly naive "change set tracking".
Scripts can group threads with the same subject (minus stuff in square
brackets) into a "change set". Detect when review tags are sent on
the list, anywhere in the life cycle of the change set. As well as
when the change set gets applied (by finding patchwork bot's reply).
This is all a bit wobbly, as we only analyze traffic from one release
cycle (patches may have been posted for the previous cycle already),
patchwork bot doesn't always reply, and cover letters change subject.
Hopefully those inaccuracies don't muddy up the picture too much :)
The change sets factor into the score math, the new formula is:
2 * change-set-reviewer
+ 8 * thread-reviewer
+ 2 * (msg-reviewer - 1)
- 4 * msg-author
General stats
-------------
Cycle started on Fri, 27 Oct, ended Tue, 09 Jan. That's 74 days
(with a slight overlap with previous cycle, I computed previous
stats few days after the PR, it seems). That's 11 days more
than previous cycle.
We have seen 240 msg/day on the list, and 17 commits/day.
The commits dropped by 12%, which is not very surprising given
the winter break.
The number of review tags in git history have recovered to 69% total
commits containing review tags and 54% with tags from different company
than the author.
Change set stats
----------------
Review rate from git history match the results from the new change set
logic. According to the change set stats - 66% of "change sets" which
ended up getting applied had replies carrying Review / Ack tags.
Change sets which got applied without any review tag posted to the list
had on average 1.35 revisions, those which did receive review tags had
1.80 revisions.
Another somewhat interesting stat is that single-patch postings
had on average 1.40 revisions, while multi-patch series 2.17.
Which makes sense, as bug in any patch requires a repost of the whole
series.
Longest change set (most revisions) the script was able to track down
in this cycle had 10 postings.
Rankings
--------
In next release cycle I'll switch some of the rankings to change sets,
if they are more interesting. Since I don't have "previous ranking"
for change sets this time I'm sticking to threads and messages.
Top reviewers (thr): Top reviewers (msg):
1 ( +1) [24] Jakub Kicinski 1 ( ) [43] Jakub Kicinski
2 ( -1) [23] Simon Horman 2 ( ) [39] Simon Horman
3 ( ) [15] Andrew Lunn 3 ( ) [39] Andrew Lunn
4 ( +1) [10] Eric Dumazet 4 ( +6) [23] Vladimir Oltean
5 ( +6) [ 8] Russell King 5 ( -1) [19] Eric Dumazet
6 ( -2) [ 7] Paolo Abeni 6 ( +7) [17] Russell King
7 ( +6) [ 5] Vladimir Oltean 7 ( +1) [15] Jiri Pirko
8 ( ) [ 5] Jiri Pirko 8 (+13) [11] Krzysztof Kozlowski
9 ( -3) [ 5] David Ahern 9 ( -3) [10] Paolo Abeni
10 (+13) [ 5] Krzysztof Kozlowski 10 ( -5) [ 9] David Ahern
11 ( +1) [ 4] Willem de Bruijn 11 (***) [ 8] Sergey Shtylyov
12 ( +9) [ 3] Stephen Hemminger 12 ( +3) [ 7] Willem de Bruijn
13 ( -4) [ 3] Florian Fainelli 13 ( -6) [ 7] Florian Fainelli
14 ( ) [ 3] Rob Herring 14 (+19) [ 6] Stephen Hemminger
15 ( +1) [ 3] Przemek Kitszel 15 (+12) [ 6] Jamal Hadi Salim
Quite a bit of movement in top reviewers. All familiar names.
Thank you all for your work!
Top authors (thr): Top authors (msg):
1 ( +2) [5] Jakub Kicinski 1 ( +1) [22] David Howells
2 (+22) [5] Christian Marangi 2 (+43) [22] Christian Marangi
3 ( -1) [3] Eric Dumazet 3 (***) [17] Hangbin Liu
4 ( +1) [3] Tony Nguyen 4 ( ) [14] Saeed Mahameed
5 (+22) [2] Shinas Rasheed 5 ( +4) [14] Tony Nguyen
6 (***) [2] Heiner Kallweit 6 (+19) [12] Kuniyuki Iwashima
7 (***) [2] Suman Ghosh 7 ( ) [11] Jakub Kicinski
8 (+11) [2] Stephen Rothwell 8 ( +8) [11] Andrii Nakryiko
9 (+14) [2] Kuniyuki Iwashima 9 (***) [10] Claudiu Beznea
10 (+34) [2] Hangbin Liu 10 (+26) [10] Justin Lai
Christian contributed a lot of (versions of? ;) PHY changes
and LED integrations. Hangbin Liu significantly improved
the selftests. Shinas posts the octeon EP VF driver.
Kuniyuki contributed to the socket layer (bhash2,
TCP syn cookies, UNIX sockets).
Top reviewers (thr): Top reviewers (msg):
1 ( ) [38] RedHat 1 ( ) [76] RedHat
2 ( ) [28] Meta 2 ( ) [56] Meta
3 ( ) [19] Intel 3 ( +1) [39] Andrew Lunn
4 ( +2) [15] Andrew Lunn 4 ( -1) [38] Intel
5 ( -1) [14] Google 5 ( ) [31] Google
6 ( +5) [ 9] Oracle 6 ( +6) [23] NXP
7 ( +2) [ 9] Linaro 7 ( -1) [23] nVidia
Top authors (thr): Top authors (msg):
1 ( +1) [18] Intel 1 ( ) [67] Intel
2 ( +1) [12] RedHat 2 ( +1) [60] RedHat
3 ( -2) [10] Google 3 ( -1) [48] nVidia
4 ( ) [ 9] Meta 4 ( +1) [32] Meta
5 ( +4) [ 7] Marvell 5 ( -1) [24] Google
6 ( -1) [ 7] nVidia 6 ( +4) [22] Alibaba
7 (+22) [ 5] Christian Marangi 7 (+23) [22] Christian Marangi
Top scores (positive): Top scores (negative):
1 ( ) [277] RedHat 1 (+20) [81] Christian Marangi
2 ( ) [250] Meta 2 ( +3) [73] Alibaba
3 ( ) [219] Andrew Lunn 3 ( -1) [67] nVidia
4 ( +4) [111] Oracle 4 ( +9) [54] Marvell
5 (+34) [100] Google 5 (+32) [50] Qualcomm
6 ( +4) [ 82] Linaro 6 (***) [44] Amazon
7 ( +7) [ 70] NXP 7 ( +4) [43] RealTek
8 ( -4) [ 62] Enfabrica 8 ( -7) [41] Bootlin
9 ( -2) [ 45] ARM 9 (***) [40] Claudiu Beznea
10 (+13) [ 35] Microsoft 10 ( +4) [33] Mojatatu
Alibaba works on both virtio and SMC without contributing many reviews.
Marvell folks (Suman in particular) have started commenting on patches,
but not nearly enough to balance the volume of authorship. Qualcomm
posted PHY patches, the volume isn't huge, but there are almost no
reviews coming from them.
Histograms
----------
LWN stats for 6.7 [1] included "longevity histograms", we are also
collecting those since 6.4 [2]. Histograms don't change much so I don't
normally include them. This time, in the interest of comparison here
they are, again:
Tenure for author
0- 1yr | 79 | ###################################
1- 2yr | 41 | ##################
2- 3yr | 32 | ##############
3- 4yr | 15 | ######
4- 5yr | 25 | ###########
5- 6yr | 22 | #########
6- 7yr | 24 | ##########
7- 8yr | 13 | #####
8- 9yr | 19 | ########
9-10yr | 18 | ########
10-11yr | 14 | ######
11-12yr | 12 | #####
12-13yr | 11 | ####
13-14yr | 14 | ######
14-15yr | 12 | #####
15-16yr | 11 | ####
16-17yr | 10 | ####
17-18yr | 12 | #####
18-19yr | 32 | ##############
19-20yr | 8 | ###
Very similar shape to LWN/global histogram. The main difference is that
our "OG peak" at 19 years is larger in proportion to most recent year.
The histogram for reviewers does not share the initial peak:
Tenure for reviewer
0- 1yr | 16 | ########
1- 2yr | 20 | ##########
2- 3yr | 19 | #########
3- 4yr | 14 | #######
4- 5yr | 25 | #############
5- 6yr | 27 | ##############
6- 7yr | 25 | #############
7- 8yr | 18 | #########
8- 9yr | 25 | #############
9-10yr | 17 | ########
10-11yr | 16 | ########
11-12yr | 11 | #####
12-13yr | 17 | ########
13-14yr | 23 | ###########
14-15yr | 19 | #########
15-16yr | 9 | ####
16-17yr | 17 | ########
17-18yr | 19 | #########
18-19yr | 54 | ############################
19-20yr | 18 | #########
[1] https://lwn.net/Articles/956765/
[2] https://lore.kernel.org/all/20230428135717.0ba5dc81@kernel.org/
--
Code: https://github.com/kuba-moo/ml-stat
Raw output: https://netdev.bots.linux.dev/static/nipa/stats-6.8/stdout
Powered by blists - more mailing lists