Date: Wed, 28 Jan 2009 11:37:30 +0100 From: Grzegorz Bernacki <gjb@semihalf.com> To: Mark Tinguely <tinguely@casselton.net>, arm@freebsd.org Subject: Re: svn commit: r186730 - in head... Message-ID: <4980356A.4090403@semihalf.com> In-Reply-To: <200901071955.n07Jthqu057051@casselton.net> References: <200901071955.n07Jthqu057051@casselton.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Mark Tinguely wrote: > Here is the "svn diff" from a week or so ago. The url is below in case > the inclusion adds some extra characters. > > http://www.casselton.net/~tinguely/arm_pmap_unmanage.diff > Mark, I downloaded your patch and applied it (after a few modification to get rid of compile errors). However, when I boot the board with new code it hangs. The problem is with uma allocator for pv_entries. When there is no more entries available it create new ones. It includes mapping memory into kernel using pmap_qenter. And then recurrence starts, pmap_qenter calls pmap_kenter which tries to allocate pv_entry and so on. I think that pv_entries for pmap_kenter should be allocated from some special pool to avoid this problem. Or some threshold could be set for uma allocator to force allocation of new pv_entries if number of free entries drops below the threshold, but I am not sure if it is possible without extending uma interface. Grzesiek
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4980356A.4090403>