From owner-freebsd-arch@FreeBSD.ORG Mon May 12 12:49:04 2003 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 653D937B401 for ; Mon, 12 May 2003 12:49:04 -0700 (PDT) Received: from mail.speakeasy.net (mail12.speakeasy.net [216.254.0.212]) by mx1.FreeBSD.org (Postfix) with ESMTP id A891843F3F for ; Mon, 12 May 2003 12:49:03 -0700 (PDT) (envelope-from jhb@FreeBSD.org) Received: (qmail 13162 invoked from network); 12 May 2003 19:49:10 -0000 Received: from unknown (HELO server.baldwin.cx) ([216.27.160.63]) (envelope-sender )encrypted SMTP for ; 12 May 2003 19:49:10 -0000 Received: from laptop.baldwin.cx ([216.133.140.1]) by server.baldwin.cx (8.12.8/8.12.8) with ESMTP id h4CJmvp0024755; Mon, 12 May 2003 15:48:58 -0400 (EDT) (envelope-from jhb@FreeBSD.org) Message-ID: X-Mailer: XFMail 1.5.4 on FreeBSD X-Priority: 3 (Normal) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 8bit MIME-Version: 1.0 In-Reply-To: <20030509201646.Q99131-100000@mail.chesapeake.net> Date: Mon, 12 May 2003 15:48:04 -0400 (EDT) From: John Baldwin To: Jeff Roberson cc: arch@freebsd.org Subject: Re: [Bikeshed] sigacts locking X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 12 May 2003 19:49:04 -0000 On 10-May-2003 Jeff Roberson wrote: > On Fri, 9 May 2003, John Baldwin wrote: > >> As part of the locking for the proc structure, I needed to lock >> the procsig and sigacts stuctures so that kill(), killpg(), >> sigaction() and a few other system calls can be pulled out from >> under Giant. After talking with Peter some, I decided to >> pull the sigacts structure out of the u-area and merge it with >> the procsig structure under the sigacts name. I then added a >> mutex to each sigacts and added locking where appropriate. With >> this change, the aforementioned system calls are now MP safe >> along with sendsig(), *signal(), cursig(), etc. The patch for >> all this is at http://www.FreeBSD.org/~jhb/patches/sigacts.patch >> I would appreciate comments, review, etc. that people may have. >> If all goes well I hope to get this into 5.1. Thanks. >> > > I'm all for this, but I have a few concerns. Right now the UAREA is > mostly taken up by sigacts. Without it the page is quite empty. This > means that we'll be allocating more storage elsewhere while leaving this > for nothing. > > Have you given any thought to removing the other bits from uarea, or > allocating uarea using a zone instead of a whole page? Alternatively, you > could disable paging for the uarea and leave sigacts in it. Leaving sigacts in the u-area is quite ugly because for rfork() RFTHREAD processes we don't use the sigacts in the u-area, we use a malloc'd one instead. Accomplishing that is quite ugly. > I just hate to s ee the wasted space. I don't have any future plans for the u-area specifically. Any of your suggestions (using a zone, axeing it completely, etc.) sound fine to me as to how to avoid wasting space. -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/