From owner-freebsd-smp Sat Jun 24 21:21:36 2000 Delivered-To: freebsd-smp@freebsd.org Received: from implode.root.com (root.com [209.102.106.178]) by hub.freebsd.org (Postfix) with ESMTP id 8818E37B76C for ; Sat, 24 Jun 2000 21:21:29 -0700 (PDT) (envelope-from dg@implode.root.com) Received: from implode.root.com (localhost [127.0.0.1]) by implode.root.com (8.8.8/8.8.5) with ESMTP id VAA08876; Sat, 24 Jun 2000 21:11:18 -0700 (PDT) Message-Id: <200006250411.VAA08876@implode.root.com> To: Matthew Dillon Cc: freebsd-smp@FreeBSD.ORG Subject: Re: Stepping on Toes In-reply-to: Your message of "Fri, 23 Jun 2000 11:37:03 PDT." <200006231837.LAA11456@apollo.backplane.com> From: David Greenman Reply-To: dg@root.com Date: Sat, 24 Jun 2000 21:11:18 -0700 Sender: owner-freebsd-smp@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org > 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 David Greenman Co-founder, The FreeBSD Project - http://www.freebsd.org Manufacturer of high-performance Internet servers - http://www.terasolutions.com Pave the road of life with opportunities. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-smp" in the body of the message