Subject: Re: kernel map entry merging and PR 24039
To: Matt Thomas <matt@3am-software.com>
From: Jason Thorpe <thorpej@wasabisystems.com>
List: tech-kern
Date: 02/04/2004 16:56:00
--Apple-Mail-20-998596411
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=US-ASCII; format=flowed


On Feb 4, 2004, at 4:35 PM, Matt Thomas wrote:

> Maybe it's me, but I don't expect pool_put() to block.
>
> I don't think this shouldn't be solved in uvm.  The solution should be 
> in the
> pool allocator itself.  Freeing pages should be deferred until either 
> doing
> a pool_get(PR_WAITOK) or wake up a kthread to do the reclaimation of 
> the
> pages.  Only then can the pool allocator return pages to uvm and then 
> uvm
> can proceed  normally to merge/split/whatever the map entries.

Actually, I really like this suggestion.  I think I would enqueue them 
for pagedaemon, or something, though.  (It's not unreasonable to expect 
some pools to never be called with PR_WAITOK...)

         -- Jason R. Thorpe <thorpej@wasabisystems.com>


--Apple-Mail-20-998596411
content-type: application/pgp-signature; x-mac-type=70674453;
	name=PGP.sig
content-description: This is a digitally signed message part
content-disposition: inline; filename=PGP.sig
content-transfer-encoding: 7bit

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (Darwin)

iD8DBQFAIZSgOpVKkaBm8XkRAtBiAJ9tH3FoSEKaL9Z8jA6WcaTqSh2G6ACgqCbt
0lYKINtO+RGcEb855QH/ecY=
=TP1J
-----END PGP SIGNATURE-----

--Apple-Mail-20-998596411--