From owner-freebsd-bugs@FreeBSD.ORG Sat Jul 26 17:10:17 2003 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7FD6537B401 for ; Sat, 26 Jul 2003 17:10:17 -0700 (PDT) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 63EC643F93 for ; Sat, 26 Jul 2003 17:10:16 -0700 (PDT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id h6R0AGUp021265 for ; Sat, 26 Jul 2003 17:10:16 -0700 (PDT) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id h6R0AGaV021264; Sat, 26 Jul 2003 17:10:16 -0700 (PDT) Resent-Date: Sat, 26 Jul 2003 17:10:16 -0700 (PDT) Resent-Message-Id: <200307270010.h6R0AGaV021264@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Lukas Ertl Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6201137B401 for ; Sat, 26 Jul 2003 17:03:58 -0700 (PDT) Received: from mailbox.univie.ac.at (mail.univie.ac.at [131.130.1.27]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5C0B743F93 for ; Sat, 26 Jul 2003 17:03:57 -0700 (PDT) (envelope-from le@univie.ac.at) Received: from korben.in.tern (dialin202.cc.univie.ac.at [131.130.202.202]) by mailbox.univie.ac.at (8.12.2/8.12.2) with ESMTP id h6R03WPL205768 for ; Sun, 27 Jul 2003 02:03:41 +0200 Received: from korben.in.tern (korben.in.tern [127.0.0.1]) by korben.in.tern (8.12.9/8.12.9) with ESMTP id h6R0383t092637 for ; Sun, 27 Jul 2003 02:03:15 +0200 (CEST) (envelope-from le@korben.in.tern) Received: (from le@localhost) by korben.in.tern (8.12.9/8.12.9/Submit) id h6R032HI092632; Sun, 27 Jul 2003 02:03:02 +0200 (CEST) (envelope-from le) Message-Id: <200307270003.h6R032HI092632@korben.in.tern> Date: Sun, 27 Jul 2003 02:03:02 +0200 (CEST) From: Lukas Ertl To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Subject: kern/54890: [PATCH] don't hold Giant when calling kmem_malloc X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Lukas Ertl List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 27 Jul 2003 00:10:17 -0000 >Number: 54890 >Category: kern >Synopsis: [PATCH] don't hold Giant when calling kmem_malloc >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sat Jul 26 17:10:15 PDT 2003 >Closed-Date: >Last-Modified: >Originator: Lukas Ertl >Release: FreeBSD 5.1-CURRENT i386 >Organization: Vienna University Computer Center >Environment: System: FreeBSD korben 5.1-CURRENT FreeBSD 5.1-CURRENT #10: Sat Jul 26 19:16:52 CEST 2003 le@korben:/usr/obj/usr/src/sys/KORBEN i386 >Description: I'm not quite sure, but I think we don't have to hold Giant anymore when we are calling kmem_malloc. >How-To-Repeat: >Fix: --- uma_core.c.diff begins here --- Index: sys/vm/uma_core.c =================================================================== RCS file: /usr/local/bsdcvs/src/sys/vm/uma_core.c,v retrieving revision 1.62 diff -u -r1.62 uma_core.c --- sys/vm/uma_core.c 26 Jul 2003 03:55:32 -0000 1.62 +++ sys/vm/uma_core.c 26 Jul 2003 17:14:09 -0000 @@ -706,15 +706,8 @@ wait &= ~M_ZERO; if (booted || (zone->uz_flags & UMA_ZFLAG_PRIVALLOC)) { - if ((wait & M_NOWAIT) == 0) { - mtx_lock(&Giant); - mem = zone->uz_allocf(zone, - zone->uz_ppera * UMA_SLAB_SIZE, &flags, wait); - mtx_unlock(&Giant); - } else { - mem = zone->uz_allocf(zone, - zone->uz_ppera * UMA_SLAB_SIZE, &flags, wait); - } + mem = zone->uz_allocf(zone, + zone->uz_ppera * UMA_SLAB_SIZE, &flags, wait); if (mem == NULL) { ZONE_LOCK(zone); return (NULL); --- uma_core.c.diff ends here --- >Release-Note: >Audit-Trail: >Unformatted: