From owner-freebsd-hackers Sat Aug 3 12:59:48 2002 Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.FreeBSD.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D556937B400 for ; Sat, 3 Aug 2002 12:59:45 -0700 (PDT) Received: from tesla.distributel.net (nat.MTL.distributel.NET [66.38.181.24]) by mx1.FreeBSD.org (Postfix) with ESMTP id EBAFD43E6E for ; Sat, 3 Aug 2002 12:59:44 -0700 (PDT) (envelope-from bmilekic@unixdaemons.com) Received: (from bmilekic@localhost) by tesla.distributel.net (8.11.6/8.11.6) id g73K0CA36621; Sat, 3 Aug 2002 16:00:12 -0400 (EDT) (envelope-from bmilekic@unixdaemons.com) Date: Sat, 3 Aug 2002 16:00:12 -0400 From: Bosko Milekic To: Jeff Roberson Cc: "Stephane E. Potvin" , freebsd-hackers@FreeBSD.ORG Subject: Re: ARM Port: Help with UMA subsystem needed Message-ID: <20020803160011.A36586@unixdaemons.com> References: <20020803121419.A35909@unixdaemons.com> <20020803154945.B26021-100000@mail.chesapeake.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5.1i In-Reply-To: <20020803154945.B26021-100000@mail.chesapeake.net>; from jroberson@chesapeake.net on Sat, Aug 03, 2002 at 03:51:20PM -0400 Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Sat, Aug 03, 2002 at 03:51:20PM -0400, Jeff Roberson wrote: > These locks can not be made recurisve safely. In this case you would just > recurse forever and never satisfy the allocation. All pmap modules do > something like the following: > > static void * > pmap_allocf(uma_zone_t zone, int bytes, u_int8_t *flags, int wait) > { > *flags = UMA_SLAB_PRIV; > return (void *)kmem_alloc(kernel_map, bytes); > } > > pvzone = uma_zcreate("PV ENTRY", sizeof (struct pv_entry), NULL, > NULL, > NULL, NULL, UMA_ALIGN_PTR, UMA_ZONE_VM); > uma_zone_set_allocf(pvzone, pmap_allocf); > uma_prealloc(pvzone, initial_pvs); Assuming ARM is following the same example, perhaps it needs to pre-allocate more pvs. Although I somehow doubt it's doing the right thing here because the panic seems to happen early on during boot, according to the trace first provided. > Is arm using a seperate allocf? > > Jeff -- Bosko Milekic * bmilekic@unixdaemons.com * bmilekic@FreeBSD.org To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message