tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: extent-patch and overview of what is supposed to follow

On 04/01/11 08:35, Lars Heidieker wrote:

this is a part of the changes to the kernel memory management.
It's a changing the subr_extent to use kmem(9) instead of malloc(9)
essentially removing the MALLOC_TYPE from it.

The next steps will provide the changes to the kmem(9)/pool(9) and the
pool/uvm_km interface.
The uvm_km will gain caches for multiplies of the page-size based on
pool extending the current 1-page-sized cache.

Making a patch for the pool(9) uvm_km interface changes will be next
followed by the kmem(9)/malloc(9) merger.
After that some changes that remove malloc(9) use from sys/uvm/* and
large parts of sys/kern/* will follow.

After that a big round of mechanical changes will follow that change
the (then based on kmem) mallocs function signature by removing the
MALLOC_TYPE completely or migrating the allocation to kmem(9).

I made some changes to the initialization order in uvm_init, the idea
behind this is to have the pool(9) allocators initialization at
explicit stages, this will make initialization of a standard
pool-allocators of different pool-page-sizes possible and will catch
use before ready cases. (This part needs further testing as some
changes in pmaps where necessary, I've compile tested all the pmaps
involved and boot-tested i386/amd64/sparc64)


this all sounds good to me.
The Xen port requires kmem(9) to return page aligned addresses to work
correctly. kmem(9) currently doesn't guarantee this. I just want to
bring this to your awareness.


Home | Main Index | Thread Index | Old Index