--
In the course of working on some patches to implement subsystem-wide critical
pools through the existing mempool API, I created the following patches which
create 3 new common mempool allocators (mempool_alloc_pages, mempool_kmalloc &
mempool_kzalloc) and freers. The following 6 patches add these new common
allocators and convert existing mempool users to use these common allocators,
where possible.
After the application of these patches there are only 4 places where
'non-common' allocators are used (drivers/md/raid1.c & raid10.c, mm/highmem.c
and drivers/scsi/scsi_transport_iscsi.c), and all of these are non-trivial
allocators. The sum of these patches is a reduction of 60 lines of kernel
code and the removal of many nearly identical mempool allocators.
These patches are against 2.6.16-rc1-mm3.
Thanks!
-Matt