atom feed28 messages in org.freebsd.freebsd-smpRe: Stepping on Toes
FromSent OnAttachments
Matthew DillonJun 23, 2000 11:36 am 
David GreenmanJun 24, 2000 9:10 pm 
Matthew DillonJun 25, 2000 10:24 am 
Jake BurkholderJun 25, 2000 11:19 am 
Chuck PatersonJun 26, 2000 9:50 am 
Matthew DillonJun 27, 2000 10:41 am 
Chuck PatersonJun 27, 2000 11:19 am 
Kevin Van MarenJun 29, 2000 1:52 pm 
Greg LeheyJul 2, 2000 6:51 pm 
Jason EvansJul 3, 2000 8:41 am 
Jake BurkholderJul 3, 2000 1:14 pm 
Jake BurkholderJul 5, 2000 2:23 am 
Matthew DillonJul 5, 2000 9:43 am 
Chuck PatersonJul 5, 2000 9:52 am 
Chuck PatersonJul 5, 2000 9:57 am 
Luoqi ChenJul 5, 2000 10:29 am 
Matthew DillonJul 5, 2000 11:28 am 
Greg LeheyJul 5, 2000 4:20 pm 
Doug RabsonJul 6, 2000 1:26 am 
Matthew DillonJul 6, 2000 10:43 am 
Greg LeheyJul 22, 2000 2:26 am 
Matthew DillonJul 22, 2000 9:20 am 
Chuck PatersonJul 22, 2000 9:57 am 
Bruce EvansJul 22, 2000 10:36 am 
Greg LeheyJul 23, 2000 8:14 pm 
Bruce EvansJul 24, 2000 1:08 am 
Chuck PatersonJul 24, 2000 6:43 am 
Matthew DillonJul 24, 2000 9:16 am 
Subject:Re: Stepping on Toes
From:David Greenman (dg@root.com)
Date:Jun 24, 2000 9:10:56 pm
List:org.freebsd.freebsd-smp

Hmm. Well, apparently I've stepped on a few toes by not using the BSDI mutex code verbatim.

My position is this:

* I don't think we can use the BSDI mutex code verbatim because we intend to keep legacy SPL support and it would take as much work addressing that in the BSDI mutex code as it would doing a new core-mutex piece from scratch.

* I think we CAN use the *WITNESS* code pretty much verbatim. The reason it isn't in patch set #1 is because the witness code is not going to be useful until we start unwinding the SPL code in the system, and that is not going to happen until *after* heavy weight interrupt threads are implemented. Until that time (maybe a month or two from now?) it's just extra baggage. It's the next logical step to take after the heavy weight interrupt code is made to work, not before.

The witness code isn't going to help us for just the Sched and Giant mutexes... simple KASSERT's deal with those situations.

In regards to the general project. If people want to try to port the BSDI mutex code directly then be my guest. I've got a patch set that works now ... I can successfully make buildworld on an SP machine with it. You can try porting the BSDI mutex code with or without the patchset I've already got, but if after a month or two if you still don't have something that works I would recommend going back to the piecemeal approach I have taken, starting with my patchset.

I won't be angry or anything if people decide to take this course, even though I think it's the wrong course to take. But you guys have to decide what to do ASAP.

Of course we need to wait a few days for people to return from Usenix. I just got back myself a few hours ago and have over 3000 emails to deal with. My general view is that we should probably go directly to the threaded interrupt model and dump spls in the first cut. Given this, I think it would be prudent to use as much of the BSDI mutex code as possible, at least for the medium term, since it has been well tested and debugged. Not using it reaks of NIH to folks on the outside, even though the SMPng group (at least) knows that that wasn't at all your motivation in rolling your own.

-DG

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