Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 07 Mar 2002 14:24:10 -0700
From:      "Justin T. Gibbs" <gibbs@scsiguy.com>
To:        Matthew Dillon <dillon@apollo.backplane.com>
Cc:        John Baldwin <jhb@FreeBSD.ORG>, Bruce Evans <bde@zeta.org.au>, Terry Lambert <tlambert2@mindspring.com>, Alfred Perlstein <alfred@FreeBSD.ORG>, Bosko Milekic <bmilekic@unixdaemons.com>, Seigo Tanimura <tanimura@r.dl.itc.u-tokyo.ac.jp>, FreeBSD current users <current@FreeBSD.ORG>, Julian Elischer <julian@elischer.org>
Subject:   Re: Patch for critical_enter()/critical_exit() & interrupt assem 
Message-ID:  <200203072124.g27LOAI62193@aslan.scsiguy.com>
In-Reply-To: Your message of "Thu, 07 Mar 2002 12:03:22 PST." <200203072003.g27K3M368992@apollo.backplane.com> 

next in thread | previous in thread | raw e-mail | index | archive | help
>
>:
>:You came to the conclusion that only *your decision* on what was
>:an appropriate proceedure was the one that mattered.  That's not
>:the way this project works.  You can't act unilaterally.  When people
>:ask you to hold off (and they even asked politely!) so discussion
>:can take place, that is not the time to commit.
>
>    I did no such thing.

Let me quote you from below:

>    So, you see, I didn't "just commit it out of nowhere".  I waited
>    what I believed to be a reasonable period of time.

So your oppinion on what was "a reasonable period of time" was the
only one that mattered. Q.E.D.

>    I came to the conclusion because not a 
>    single goddamn person bothered to read the patch and instead
>    the only argument I got was "wait for John" and John's only 
>    argument is "I don't like the idea of optimizing this routine
>    right now" as if he would be the only one responsible for
>    dealing with the consequences.

Actually, John's reaction to the patch is a secondary issue.  He
wasn't even able to read the lists when this thing blew up.  He could
have fallen over backward with love for your changes and you still
would have strewn cuss words all over our lists.

[More talk about the irrelevant contents of the patch and
 "40 hours of work being thrown away" paranoia.]

>    I am angry because you and a number of others are not willing to take
>    the work at face value and instead insist on making ridiculous extremist
>    assumption into it and then using that opinion to justify not allowing
>    the patch to go in.

How many times do I have to say this?  The patch is not the issue.  Most
likely it will be incorperated into the tree shortly.  <Yawn>

I'm sorry Matt, but even if these changes are gold lined, it doesn't
change the fact that you acted unilaterally in a manner that is not
conducive to team work.  That it.  That's really it.

Now do you want me to go chew out John too.  Okay.  John isn't being
super professional either.  The fact that you started this doesn't change
that.  You both have done things that you shouldn't have.  Now instead
of trying to convince us that you are completely without reproach, why
not move forward in some constructive manner?  Aren't you out of breath
yet?  Aren't your fingers tired of typing the same old worn out argument,
"My code excuses my behavior!" again and again?

>:One week of discussion will not prevent the code from being tested.
>
>    Coming on THREE weeks now.  Three weeks of my time wasted arguing
>    with people who don't even bother to take the time to understand what
>    I am trying to accomplish...

This is your choice Matt.  You may not realize it, but you are in control
of how long this wears on.

>    Gee, lets see... why don't YOU ask JOHN how long he intends to wait
>    before he allows this sort of optimization to be made?  Eh?  Please.

Hey John.  Can you comment on whatever issues you have with the content
of these changes?  If the API is not compatible with what you are doing,
please explain why and how those conflicts might be resolved.  Assuming
that these issues can be addressed and the optimization can be disabled
via a configuration option, what further reasons are there to not allow
this change to go into the tree?

>:>    That is not how I work and I strongly oppose that kind of methodology.
>:
>:I think you've made that clear already.  The question is whether you
>:are willing to compromise so you can be part of a team or not.  That
>:means, for all of us, that we will not necessarily be able to work in
>:the way we would personally want, all of the time.  That's what happens
>:in a group environment.  That's life.
>
>    This is not about being part of a team.

I've played "hide and seek" with people that feel this way.
"1, 2, 3 Seems like a reasonable amount of time to me...  Ha Ha found
you!"

>    You don't have to be forced into using someone else's methodology to
>    be part of a team.

No, you have to accept the team's methodology in areas that affect the
team.  As we say in the States, "your personal liberties end where they
infrindge on mine."  This is no different.  The CVS repository is not
yours to commit to any way you like.  The team has a methodology for
that and as soon as that methodology is broken, we fall into situations
just like this one.

>    This IS about team work, but you are barking up the wrong tree if you
>    think I'm the one who's not being a team player here.

I know you believe this.  Just as you believed you were reasonable in
committing that code when you were asked not to.  Just as you continue
to insist that the content of your patch is the issue here.  I can't
convince you otherwise, but perhaps I can convince you to drop your
self righteousness for a bit so we can move on?

>    I HAVE NEVER SAID THAT THE CODE COULD NOT BE CHANGED.  Hello?  Are
>    you even listening to what I am saying?

Actually?  No.  This isn't about the code, so your comments about it
have absolutely no sway with me.  You should save your breath for arguments
that are actually relevent to this discussion.

>    Say what?  Who said anything about me not wanting to discuss API changes?
>    That's all I've been TRYING to do for the last three fucking weeks!

I don't know about others, but my ears start to shut down when the person
on the other side of the conversation is swearing and yelling their ideas
at me.

>    Are you discussing API changes?  No, you are basically just bashing me.

Umm.  Did I ever claim to be the one wanting to discuss API changes?  No.
I just want you to focus on having a rational discussion instead of jumping
around like a squirl that's had its tail run over.  Is that bashing you?
Only if you say so.  I'll be happy to "bash" other people that don't
understand the consequences of their actions on the health of the project.
I've had similar arguments with phk, obrien, wpaul, and even Jordan.  Don't
feel special because I'm harping on you this week.

>:
>:Did I say anything about source files?  This is about discussion prior
>:to commit.  Nothing more.
>
>    So far there has been no discussion.  Not a single person, most
>    especially john, has attempted to initiate any constructive discussion
>    about the API.  

John has no excuse.  Neither do you.

>    You obviously didn't go back far enough.  These are the facts:
>
>    Matt:	I'm having a go at fixing critical_enter  (Matt discusses
>		what he would like to do).
>    Bruce:	Say, I did something very similar to that.
>    Matt:	Really?  Why didn't you commit it?  Could I have a copy
>		of what you did?
>    Bruce:	I hacked a bunch of the issues and it is mixed in with
>		other things.  Here's a diff of my sys tree.
>    Matt:	Wow!  Great stuff.
>		(Matt goes off into a corner and does his stuff, using
>		BDE's code).
>    Matt:	Ok guys, I think I have something that works, here try
>		this.
>		(two days pass, a few people respond positively)
>    Matt:	Ok, I am going to commit this.
>    Others:	wait a week for John.
>    Matt:	huh?  I don't think this interferes with anything john is
>		doing.
>    Others:	wait a week for John.  

Other than BDE sanctioning your change (also irrelevant), you've just
verified that you acted even though others, politely, asked you to
wait.  Thanks!

>    And it went forward from there.  My ucred changes were already on hold,
>    and now I was faced with waiting a week for a John.  Well, after all
>    of that I finally got tired of waiting.  I said, very clearly, that
>    (A) I intended to commit it.  That (B) I had no problem discussing 
>    issues with the (unresponsive apparently on vacation) John after the
>    commit

In otherwords.  You acted unilaterally.  You seem to be making my
arguments for me.  Again. Thanks!

>    Now who is being unreasonable?  Why do you believe that it is absolutely
>    necessary that I be prevented from committing the work?

I have never said any such thing.  Go re-read my email if that is the only
way to prove it to you.  I said that it should only be committed after
discussion.  Does this mean "don't ever commit that worthless pile of code
you posted"?  You keep on trying to make it sound that way, but that's
simply not the case.

>    If someone asked me to wait a day, or even two, it would not be 
>    a problem.  But if someone asks me to sit on my heals for a week, or
>    two, or THREE, without any direct justification, then, yes, I consider
>    it to be an inappropriate request.

So you acted unilaterlly.  Perhaps I should count the number of instances
of the word 'I' in your messages.  'I' is not a teamwork word. 8-)

I wrote a fully preemtive RTOS on a Z80 before JHB was even born
I wrote these kick as patches that enhance pre-emption performance.
I committed to the tree even though others asked me not to because
   I knew I was right and I knew I had waited a reasonable amount of
   time.

The first two don't excuse the last.

>    I will repeat:  This is a damn good patch.  I want to see it go in.

Then do the right things so it will.

--
Justin

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200203072124.g27LOAI62193>