From owner-freebsd-smp Fri Mar 22 7: 5:28 2002 Delivered-To: freebsd-smp@freebsd.org Received: from mail14.speakeasy.net (mail14.speakeasy.net [216.254.0.214]) by hub.freebsd.org (Postfix) with ESMTP id BEB9837B417 for ; Fri, 22 Mar 2002 07:05:22 -0800 (PST) Received: (qmail 22173 invoked from network); 22 Mar 2002 15:05:20 -0000 Received: from unknown (HELO server.baldwin.cx) ([216.27.160.63]) (envelope-sender ) by mail14.speakeasy.net (qmail-ldap-1.03) with DES-CBC3-SHA encrypted SMTP for ; 22 Mar 2002 15:05:20 -0000 Received: from laptop.baldwin.cx (gw1.twc.weather.com [216.133.140.1]) by server.baldwin.cx (8.11.6/8.11.6) with ESMTP id g2MF5vv70096; Fri, 22 Mar 2002 10:05:58 -0500 (EST) (envelope-from jhb@FreeBSD.org) Message-ID: X-Mailer: XFMail 1.5.2 on FreeBSD X-Priority: 3 (Normal) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 8bit MIME-Version: 1.0 In-Reply-To: <200203220019.g2M0Jcw03488@apollo.backplane.com> Date: Fri, 22 Mar 2002 10:05:19 -0500 (EST) From: John Baldwin To: Matthew Dillon Subject: Re: Giant instrumentation Cc: smp@FreeBSD.ORG Sender: owner-freebsd-smp@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org On 22-Mar-2002 Matthew Dillon wrote: > >:Kelly Yancey implemented most of the syscall Giant instrumentation >:stuff I outlined in an earlier e-mail. I have since mostly finished >:it and changed a few things. Most of the changes were design changes >:so that the instrumentation stuff was as separated from the rest of >:the kernel (and thus easily condionitionally compiled out with minimal >:impact) as possible. Also, it now provides better support for handling >:other ABIs. It's not complete yet (it only has instrumentation for >:the native ABI at the moment) but I wanted to post this patch for >:feedback. I have tested it some and it is being tested some more on >:alpha and x86 at the moment. The patch can be found at: >: >:http://www.FreeBSD.org/~jhb/patches/giantvars.patch >: >:-- >: >:John Baldwin <>< http://www.FreeBSD.org/~jhb/ > > This is extreme overkill. Unless you an Kelly plan on doing all > the work of instrumenting everything, I don't think many developers > are going to want to deal with this. I certainly don't. I think what > I have in there now not only works just fine, it's also easily > understood and straightforward. This patch is unnecessarily complex > and way too far disassociated (hidden) from the code it is supposed > wrap to be of any tangible benefit to -current development. > > I know I'm being harsh here, but that is my opinion. Er, instead of adding s = mtx_lock_giant()/mtx_unlock_giant() along with having to possibly rework logic of code, you just add "foo" to a line in syscalls.giantvars. This is hard? The main difference here is that the instrumentation code no longer impacts the actual syscall source code thus keeping the actual syscall code cleaner. Also, in your current implementation you encourage both safe and unsafe code to be under the sysctl variables meaning that we can't actually get Giant out from under a subsystem until the whole thing is done preventing us from incrementally moving things out from under Giant. -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-smp" in the body of the message