diff options
author | Richard Braun <rbraun@sceen.net> | 2011-12-17 15:24:05 +0000 |
---|---|---|
committer | Richard Braun <rbraun@sceen.net> | 2011-12-17 22:12:40 +0000 |
commit | db2078e4f1802434f791f4f1c333725c42fe172b (patch) | |
tree | 39961f1164f12e1496a84d2f40451dcb78609b7e /include | |
parent | 7bc54a622e0c57a1085cd2990a1deedc8bd4743d (diff) |
Adjust the kernel to use the slab allocator
* device/dev_lookup.c: Replace zalloc header, types and function calls
with their slab counterparts.
* device/dev_pager.c: Likewise.
* device/ds_routines.c: Likewise.
* device/io_req.h: Likewise.
* device/net_io.c: Likewise.
* i386/i386/fpu.c: Likewise.
* i386/i386/io_perm.c: Likewise.
* i386/i386/machine_task.c: Likewise.
* i386/i386/pcb.c: Likewise.
* i386/i386/task.h: Likewise.
* i386/intel/pmap.c: Likewise.
* i386/intel/pmap.h: Remove #include <kernel/zalloc.h>.
* include/mach_debug/mach_debug.defs (host_zone_info): Replace
routine declaration with skip directive.
(host_slab_info): New routine declaration.
* include/mach_debug/mach_debug_types.defs (zone_name_t)
(zone_name_array_t, zone_info_t, zone_info_array_t): Remove types.
(cache_info_t, cache_info_array_t): New types.
* include/mach_debug/mach_debug_types.h: Replace #include
<mach_debug/zone_info.h> with <mach_debug/slab_info.h>.
* ipc/ipc_entry.c: Replace zalloc header, types and function calls with
their slab counterparts.
* ipc/ipc_entry.h: Likewise.
* ipc/ipc_init.c: Likewise.
* ipc/ipc_marequest.c: Likewise.
* ipc/ipc_object.c: Likewise.
* ipc/ipc_object.h: Likewise.
* ipc/ipc_space.c: Likewise.
* ipc/ipc_space.h: Likewise.
* ipc/ipc_table.c (kalloc_map): Remove extern declaration.
* kern/act.c: Replace zalloc header, types and function calls with their
slab counterparts.
* kern/kalloc.h: Add #include <vm/vm_types.h>.
(MINSIZE): Remove definition.
(kalloc_map): Add extern declaration.
(kget): Remove prototype.
* kern/mach_clock.c: Adjust comment.
* kern/processor.c: Replace zalloc header, types and function calls with
their slab counterparts.
* kern/startup.c: Remove #include <kernel/zalloc.h>.
* kern/task.c: Replace zalloc header, types and function calls with
their slab counterparts.
* kern/thread.c: Likewise.
* vm/memory_object_proxy.c: Likewise.
* vm/vm_external.c: Likewise.
* vm/vm_fault.c: Likewise.
* vm/vm_init.c: Likewise.
* vm/vm_map.c: Likewise.
* vm/vm_object.c: Likewise.
* vm/vm_page.h: Remove #include <kernel/zalloc.h>.
* vm/vm_pageout.c: Replace zalloc header, types and function calls with
their slab counterparts.
* vm/vm_resident.c: Likewise.
(zdata, zdata_size): Remove declarations.
(vm_page_bootstrap): Don't steal memory for the zone system.
Diffstat (limited to 'include')
-rw-r--r-- | include/mach_debug/mach_debug.defs | 20 | ||||
-rw-r--r-- | include/mach_debug/mach_debug_types.defs | 7 | ||||
-rw-r--r-- | include/mach_debug/mach_debug_types.h | 2 |
3 files changed, 12 insertions, 17 deletions
diff --git a/include/mach_debug/mach_debug.defs b/include/mach_debug/mach_debug.defs index 2a58dc4..053c3fe 100644 --- a/include/mach_debug/mach_debug.defs +++ b/include/mach_debug/mach_debug.defs @@ -42,17 +42,7 @@ skip; /* host_ipc_statistics_reset */ skip; /* host_callout_info */ skip; /* host_callout_statistics */ skip; /* host_callout_statistics_reset */ - -/* - * Returns information about the memory allocation zones. - */ -routine host_zone_info( - host : host_t; - out names : zone_name_array_t, - CountInOut, Dealloc; - out info : zone_info_array_t, - CountInOut, Dealloc); - +skip; /* host_zone_info */ skip; /* host_ipc_bucket_info */ #if !defined(MACH_IPC_DEBUG) || MACH_IPC_DEBUG @@ -228,6 +218,14 @@ routine mach_vm_object_pages( out pages : vm_page_info_array_t, CountInOut, Dealloc); +/* + * Returns information about the memory allocation caches. + */ +routine host_slab_info( + host : host_t; + out info : cache_info_array_t, + CountInOut, Dealloc); + #else /* !defined(MACH_VM_DEBUG) || MACH_VM_DEBUG */ skip; /* mach_vm_region_info */ skip; /* mach_vm_object_info */ diff --git a/include/mach_debug/mach_debug_types.defs b/include/mach_debug/mach_debug_types.defs index 9f1976f..f60125a 100644 --- a/include/mach_debug/mach_debug_types.defs +++ b/include/mach_debug/mach_debug_types.defs @@ -32,11 +32,8 @@ #include <mach/std_types.defs> -type zone_name_t = struct[80] of char; -type zone_name_array_t = array[] of zone_name_t; - -type zone_info_t = struct[9] of integer_t; -type zone_info_array_t = array[] of zone_info_t; +type cache_info_t = struct[19] of integer_t; +type cache_info_array_t = array[] of cache_info_t; type hash_info_bucket_t = struct[1] of natural_t; type hash_info_bucket_array_t = array[] of hash_info_bucket_t; diff --git a/include/mach_debug/mach_debug_types.h b/include/mach_debug/mach_debug_types.h index 2ba0cb1..5d4efcd 100644 --- a/include/mach_debug/mach_debug_types.h +++ b/include/mach_debug/mach_debug_types.h @@ -32,7 +32,7 @@ #include <mach_debug/ipc_info.h> #include <mach_debug/vm_info.h> -#include <mach_debug/zone_info.h> +#include <mach_debug/slab_info.h> #include <mach_debug/hash_info.h> typedef char symtab_name_t[32]; |