falsifian at falsifian.org
Fri May 14 10:00:00 PDT 2021
I'm interested in getting my feet wet with kernel programming, and was
happy to find the projects page at
I saw the "remove zalloc" project, and was thinking of trying to remove
zalloc from /sys/vm/swap_pager.c. Is this still considered worth doing?
If so, I will have a bunch of questions. If someone has the patience to
help me through this, it would make me very happy! (Even if the end
result doesn't get committed, I'll still have learned something.) I'd
also be happy to be pointed to a different project.
1. I think switching to kmalloc would work, but would waste space,
since allocations are rounded up to a power of 2. Is that right?
(kmalloc might also be slower, but swap is super-slow anyway
compared to main memory access, so I don't know if speed matters.)
2. The projects page says the existing uses can be changed to objcache.
If that's the case, how exactly should objcache be used? Would it
need a new allocator?
I guess objcache_malloc_alloc isn't good because kmalloc wastes
The man page suggests objcache_nop_alloc for "allocation policies
that pre-allocate at initialization time instead of doing run-time
allocation". I guess this is not good either because we should be
able to allocate more memory if swap use grows.
Does this mean a new objcache allocator should be written that
allocates big chunks like zalloc?
More information about the Kernel