开始清理公司的资料了,发现几封很老的邮件。事情的起因是: 2.6.32-rc6 的时候,一个用户发现了内核无线网络驱动中的 Bug,他通过二分搜索找到导致问题的修改并发邮件请 Linus 取消修改。这时候无线子系统的维护者有点不乐意,他发文希望以后这种邮件直接发给维护者。 Linus 的回答以 “You’re full of sh*t” 开始,言辞犀利,直中要害。面对世界上最优秀的程序员,Linus 能够主持 Linux 开发这么多年,不是盖得。
On Wed, 4 Nov 2009, Marcel Holtmann wrote:
I have to agree here. It happens why too often lately. And this needs to
stop. Otherwise why bother with subsystem maintainers? Just send
everything to Linus directly and have him to review every line of code.
You’re full of sh*t.
Bugs are bugs. They should be reverted, and the people who introduced them
should be SHAMED if the thing was introduced after the merge window.
I don’t need to review any line of code at all - a revert is a revert.
There’s not a lot of review that needs, just a very obvious “that bug
causes more problems than it fixed”.
And yes, I’m upset, because in this case I saw one of the earlier bisect
results too, and I did actually spend time debugging it and sending
Johannes the information, because he basically ignored the bisect result.
That makes me upset. The fact that somebody has bisected the problem means
that you should damn well thank them, not complain. And look at the -rc
number, look at the commit - and you should realize that “please revert”
is OBVIOUSLY the right thing to say to something that introduces problems
after -rc5.
The fact is, maintainer ship does not mean ownership. It means that you
should be responsible for the code, and you get credit for it, but if
problems happen you do NOT “own” it. Not at all.
If you don’t understand that, you shouldn’t be a maintainer.
And if it’s not obvious - I’m really upset that people are complaining
about “please revert” for this case. YOU were wrong.
Linus==================================================
On Tue, 3 Nov 2009, Johannes Berg wrote:
I’ll rant a bit too – I’ve been very annoyed by this many times. Note
this isn’t really against you (Dmitry) in particular, just another
case … but it does tick me off that many times when somebody manages
to blame a failure on a specific commit the first thing they do is ask
somebody way “above” (in terms of patch flow into mainline) the person
writing the patch (like Linus here) to revert it.
Johannes, you’re simply WRONG.
At this point (ie way after -rc1), “just revert it” really is the right
thing to do. The commit was shit. It caused more problems than it fixed. I
should have reverted it immediately when that was clear. I didn’t, and
because I didn’t, other people then had to waste time bisecting it.
So instead of complaining about other people, I would suggest you look
yourself in the mirror. Stop thinking you “own” code. If you wrote a buggy
commit, and somebody else went through the work to bisect it, you should
(a) expect it to be reverted
(b) thank the person for finding the bug YOU introduced.
(c) be ashamed of YOURSELF
instead of whining about it as if we should thank you!
Linus