From owner-freebsd-current@FreeBSD.ORG Sat Jan 14 05:53:50 2006 Return-Path: X-Original-To: current@freebsd.org Delivered-To: freebsd-current@FreeBSD.ORG Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8959716A41F; Sat, 14 Jan 2006 05:53:50 +0000 (GMT) (envelope-from sgk@troutmask.apl.washington.edu) Received: from troutmask.apl.washington.edu (troutmask.apl.washington.edu [128.208.78.105]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2D7AB43D45; Sat, 14 Jan 2006 05:53:50 +0000 (GMT) (envelope-from sgk@troutmask.apl.washington.edu) Received: from troutmask.apl.washington.edu (localhost [127.0.0.1]) by troutmask.apl.washington.edu (8.13.4/8.13.4) with ESMTP id k0E5rlJ2045606; Fri, 13 Jan 2006 21:53:47 -0800 (PST) (envelope-from sgk@troutmask.apl.washington.edu) Received: (from sgk@localhost) by troutmask.apl.washington.edu (8.13.4/8.13.1/Submit) id k0E5rl29045605; Fri, 13 Jan 2006 21:53:47 -0800 (PST) (envelope-from sgk) Date: Fri, 13 Jan 2006 21:53:47 -0800 From: Steve Kargl To: Kris Kennaway Message-ID: <20060114055347.GA45580@troutmask.apl.washington.edu> References: <20060114052117.GA16773@xor.obsecurity.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20060114052117.GA16773@xor.obsecurity.org> User-Agent: Mutt/1.4.2.1i Cc: current@freebsd.org Subject: Re: Extreme contigmalloc() slowness with mpt driver X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 14 Jan 2006 05:53:50 -0000 On Sat, Jan 14, 2006 at 12:21:17AM -0500, Kris Kennaway wrote: > I have an amd64 machine with 16GB of RAM that takes ages to boot (~40 > minutes on 7.0). This is because the mpt driver takes 20 minutes to > attach (with 2 instances). This in turn is because the following code > from dev/mpt/mpt_pci.c:mpt_dma_mem_alloc() takes about 5 seconds to > execute, and it is run 256 times in a loop: > > error = bus_dmamap_create(mpt->buffer_dmat, 0, &req->dmap); > > When I set vm.old_contigmalloc=1, the system boots without delay. > > This points to a bug in contigmalloc. > This is probably related to my recent reports of extremely slow probing of fxp0. I have 12 GB on a Tyan K8S Pro and fxp0 takes on the order of 7 minutes to probe. -- Steve