Xserver driver merging pros & cons

Jeremy Huddleston jeremyhu at apple.com
Fri Sep 16 02:51:50 PDT 2011

On Sep 16, 2011, at 3:50 AM, Michel Dänzer wrote:

>> Can you be more specific?  When we were discussing this yesterday, it
>> seemed like the "new development model" was working and that it was no
>> longer a barrier to this problem.
> Try getting a review for a non-sexy change, e.g. in EXA. And even in
> other areas, if it takes more time/effort to get in a bugfix than to fix
> the bug in the first place, why should one bother? I'm only bothering
> anymore for bugs that affect users really badly.

While it is true that the number of commits has dropped, that's not necessarily a bad thing.  I did not do exhaustive analysis to see what were reversions and what were addressing introduced regressions which occurred BECAUSE of the old policy.

> Generally there's been too many useful patches languishing indefinitely
> due to the unrealistic process. Alex said you had slides at XDC showing
> that the number of changes went down for each recent xserver release.
> That matches my impression that the new process has been killing
> momentum, instead of attracting new momentum as had been promised.

I decided to do some more mining of data for this discussion.

A sizable portion of the commits in 1.7 and prior were due to a spike in both input and XQuartz.  XQuartz was finally usable on master with 1.7 which ended that deluge.  As Peter briefly mentioned when I had up this slide, many of the input changes were due to reverting changes from 1.6 and then adding it back in to 1.7, so each input commit got counted triple (in to 1.6, out of 1.6, in to 1.7).

Additionally, the number of individual contributors has dropped (by roughly 50%) which does seem to validate Michel's point about there being a barrier to contribution.  I am certainly interested in exploring what we can do to make this process easier, but let's handle that issue separately since it needs to be discussed no matter what the driver integration resolution is.  As someone who feels there is a barrier, can you offer some suggestions?

As for the data, below are the number of individual patch authors and the top 10 authors for each major release from 1.4 onward (recall 1.4 succeeded 1.2 on master and 1.3 was branched from the 1.2 branch).  These data were mined with:
git log xorg-server-1.5.0...xorg-server-1.6.0 | git shortlog | egrep '\([0-9]+\)' | wc -l
git log xorg-server-1.5.0...xorg-server-1.6.0 | git shortlog | egrep '\([0-9]+\)' | sed 's/^\(.*\) (\(.*\)):$/\2 \1/' | sort -rn | head -n 10

If anyone has cooler git-fu ways to do this, I'd love to hear about it off list.

1.2.0 to 1.4:
94 individuals

335 Daniel Stone
122 Keith Packard
83 Adam Jackson
74 Alan Coopersmith
71 Eric Anholt
69 Michel Dänzer
57 Soren Sandmann Pedersen
42 Brian
36 Ben Byer
35 Aaron Plattner

1.4 to 1.5:
106 individuals

360 Eamon Walsh
152 Adam Jackson
105 Ian Romanick
76 Jeremy Huddleston
75 Daniel Stone
74 Dodji Seketeli
74 Ben Byer
58 Peter Hutterer
52 Kristian Høgsberg
50 Michel Dänzer

1.5 to 1.6: 
107 individuals

775 Peter Hutterer
324 Jeremy Huddleston
310 Adam Jackson
85 Keith Packard
66 Daniel Stone
59 Kristian Høgsberg
55 Eamon Walsh
54 Julien Cristau
50 Alan Coopersmith
46 Michel Dänzer

1.6 to 1.7:
104 individuals

721 Peter Hutterer
223 Jeremy Huddleston
144 Adam Jackson
69 Keith Packard
68 Maarten Maathuis
68 Alan Coopersmith
54 Daniel Stone
47 Michel Dänzer
39 Paulo Cesar Pereira de Andrade

1.7 to 1.8
72 individuals

110 Peter Hutterer
81 Jeremy Huddleston
49 Keith Packard
35 Michel Dänzer
30 Yaakov Selkowitz
30 Alan Coopersmith
26 Mikhail Gusarov
18 Eamon Walsh
14 Gaetan Nadon

1.8 to 1.9
54 individuals

99 Keith Packard
75 Jamey Sharp
50 Tiago Vignatti
49 Peter Hutterer
33 Mikhail Gusarov
32 Alan Coopersmith
26 Jeremy Huddleston
17 Dan Nicholson
15 Kristian Høgsberg
13 Jesse Barnes

1.9 to 1.10
66 individuals

115 Peter Hutterer
91 Adam Jackson
81 Keith Packard
33 Alan Coopersmith
31 Jeremy Huddleston
28 Pauli Nieminen
27 Tiago Vignatti
26 Jamey Sharp
26 Gaetan Nadon

1.10 to 1.11
42 individuals

107 Peter Hutterer
89 Jeremy Huddleston
45 Adam Jackson
39 Keith Packard
29 Tiago Vignatti
26 Daniel Stone
21 Gaetan Nadon
17 Søren Sandmann Pedersen
17 Alan Coopersmith

More information about the xorg-devel mailing list