[coreboot] Changes to the coreboot Project Structure

mrnuke mr.nuke.me at gmail.com
Thu Mar 20 23:42:48 CET 2014

On Thursday, March 20, 2014 10:55:57 PM Stefan Reinauer wrote:
> Changes to the coreboot Project Structure
> Measures to improve the coreboot Development Model
> * Require authors to acknowledge changes made in their name (Forge-Author)
>   [...]
Couldn't agree more.
> * Define owners for (sets of) mainboards and require these to act as
>   maintainers / gatekeepers, being the controlling instance to submit
>   these mainboard changes.
>   [...]
> * Build a MAINTAINERS file for common code, and encourage people to keep
>   subsystem maintainers in the loop for changes
>   [...]
This is somewhat what linux does, and it works well for them.

Might be a little OT/irrelevant, but why not make gerrit need a "maintainer 
must approve" before making the change submittable.
> * Look into making gerrit automatically add reviewers based on maintainer
>   lists
>   [...]
Can we find something better than gerrit? I think gerrit encourages too much 
bikeshedding. It also encourages people to filter out gerrit emails, so that 
any such maintainers would not "get the message".

> * Import previous code reviews and results
>   The tree major stakeholders in the project all own internal code review
>   systems, some of which are public (e.g. the Google Chrome OS repository)
>   and have code reviews that include representatives outside of Google to
>   ensure general code quality and making sure the improvements made for
>   products don’t negatively impact upstreamability. For those cases it
>   would be extremely helpful to honor the code reviews already done in the
>   upstream repository
I couldn't disagree more. First of all, the idea of "representatives outside 
of <company> to ensure general code quality" is contrary to the idea of 
allowing the community to scrutinize to-be-upstreamed contributions. When you 
combine that with the idea of [blindly] honoring code reviews already done 
upstream, you have effectively eliminated the scrutiny and review from the 
community. I've seen mostly cases of great external reviews, but have also 
seen a fair share of bodged, nonsensical ones where terrible patches have been 
accepted without much thought.

If the community has to accept code reviews done under closed doors, these 
contributions are effectively code dumps. I do not remember this ever being 
beneficial to the community, and usually results in the community needing to 
clean up afterwards. See linux for details.

What do we need to do to allow commercial contributors to work directly 
upstream? And before you discount this question for menial technical reasons, 
please take a moment to keep this conversation open, and let's try to find an 
answer. Will it work for 100% of commercial contributors? No. However, this 
should be the preferred method for upstreaming contributions. See linux for an 
explanation why this works best.

> * Significantly reduce number of submitters
>   To ensure consistency, scalability and conformity with the general
>   coreboot strategy, we need to define a clear committer structure that
>   defines the original project structure of having a benevolent dictator
>   aka project leader (Stefan Reinauer) and gatekeepers in place. The
>   suggested structure will need to value both community interests and
>   corporate interests equally and hence a good setup would be to have a
>   final amount of six developers with submit rights, three community
>   representatives and three corporate representatives (on from each major
>   stakeholder):
I am sorry to say this Stefan, but, in my opinion, you would not make a good 
"benevolent dictator".

Over the past years, I have found you to be extremely biased towards the needs 
of the commercial developers, whilst being less interested and attentive to 
the needs and wished of the non-commercial part of the community. I do not 
believe that someone biased towards one part or another of the community can 
make a great leader. You also, on some occasions, delayed good NC 
contributions in order to merge less-than-ideal commercial contributions, 
which later had to be cleaned up by the NC guys.

You are a great person, but I believe that having you as the leader, we would 
have a "benevolent dictator" for the commercial contributors, where the non-
commercial ones would see have a mere "dictator".

On the other hand, I have found Ron Minnich to be very unbiased and equally 
receptive to ideas from both sides of the community. While I am certain some 
people might come to point out mistakes Ron had done in the past, unlike you, 
I did not find a pattern of bias in them. I think Ron is the best candidate 
for the role of "President and Benevolent Dictator of Coreboot".

>   Current suggestions:
>   Patrick Georgi (Secunet)
>   Marc Jones (Sage)
>   Stefan Reinauer (Google)
It has been this way for years, so to speak. I also find you to be a much 
better candidate as the representative/maintainer for Google contributions. I 
think you can do much more good to coreboot in this position.


More information about the coreboot mailing list