[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[SCM] GNU Mach branch, master-slab, created. 88382234bb540544a3550d1ddfb
From: |
Richard Braun |
Subject: |
[SCM] GNU Mach branch, master-slab, created. 88382234bb540544a3550d1ddfb84e0d17eec971 |
Date: |
Sat, 17 Dec 2011 22:20:47 +0000 |
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Mach".
The branch, master-slab has been created
at 88382234bb540544a3550d1ddfb84e0d17eec971 (commit)
- Log -----------------------------------------------------------------
commit 88382234bb540544a3550d1ddfb84e0d17eec971
Author: Richard Braun <address@hidden>
Date: Sat Dec 17 21:43:48 2011 +0000
Remove arbitrary limits used by the zone system
The zone allocator could limit the size of its zones to an arbitrary
value set at zinit() time. There is no such parameter with the slab
module. As a result of removing those limits, the kern/mach_param.h
header becomes empty, and is simply removed altogether.
* Makefrag.am (libkernel_a_SOURCES): Remove kern/mach_param.h.
* i386/i386/fpu.c: Remove #include <kern/mach_param.h>.
* i386/i386/machine_task.c: Likewise.
* i386/i386/pcb.c: Likewise.
* ipc/ipc_init.c: Likewise.
(ipc_space_max): Remove variable.
(ipc_tree_entry_max): Likewise.
(ipc_port_max): Likewise.
(ipc_pset_max): Likewise.
* ipc/ipc_init.h (IPC_ZONE_TYPE): Remove macro.
(ipc_space_max): Remove extern declaration.
(ipc_tree_entry_max): Likewise.
(ipc_port_max): Likewise.
(ipc_pset_max): Likewise.
* ipc/ipc_hash.c (ipc_hash_init): Don't use ipc_tree_entry_max to
compute ipc_hash_global_size.
* ipc/ipc_marequest.c: Remove #include <kern/mach_param.h>.
(ipc_marequest_max): Remove variable.
(ipc_marequest_init): Don't use ipc_marequest_max to compute
ipc_marequest_size.
(ipc_marequest_info): Return (unsigned int)-1 in maxp.
* kern/act.c: Remove #include <kern/mach_param.h>.
* kern/mach_clock.c: Likewise.
* kern/priority.c: Likewise.
* kern/task.c: Likewise.
* kern/thread.c: Likewise.
* vm/memory_object_proxy.c: Likewise.
* vm/vm_fault.c: Likewise.
commit aef06eb95fdb3e5f5b857a8b641723759e850a85
Author: Richard Braun <address@hidden>
Date: Sat Dec 17 21:25:23 2011 +0000
Remove the defunct kernel_task_create() function
The kmem_suballoc() function, which has been replaced with
kmem_submap(), is called by kernel_task_create(). Rather than update it,
remove this now unused function.
* kern/task.c (kernel_task_create): Remove function.
* kern/task.h (kernel_task_create): Remove prototype.
commit 5988ae8fb41ace936e48e5a972abe1c5acc8f8af
Author: Richard Braun <address@hidden>
Date: Sat Dec 17 15:54:47 2011 +0000
Fix kern/kalloc.h includes
* device/dev_pager.c: Remove #include <kern/kalloc.h>.
* i386/i386/io_perm.c: Add #include <kern/kalloc.h>.
* kern/bootstrap.c: Likewise.
* kern/ipc_tt.c: Likewise.
* kern/pc_sample.c: Likewise.
* kern/processor.c: Likewise.
* kern/server_loop.ch: Likewise.
* kern/thread.c: Likewise.
* linux/dev/glue/block.c: Likewise.
* linux/dev/glue/net.c: Likewise.
* vm/vm_map.c: Likewise.
* xen/block.c: Likewise.
* xen/net.c: Likewise.
* xen/store.c: Likewise.
commit 7fa0de680bbfed02e09ad517788fe336c0d855cc
Author: Richard Braun <address@hidden>
Date: Sat Dec 17 16:23:33 2011 +0000
Adjust VM initialization
Unlike the zone allocator, the slab code can't be fed with an initial
chunk of memory. Some VM objects used early during startup now have to
be statically allocated, and kernel map entries need a special path
to avoid recursion when being allocated.
* vm/vm_map.c (vm_submap_object_store): New variable.
(vm_submap_object): Point to vm_submap_object_store.
(kentry_data_size): Initialize to arbitrary value.
(kentry_count): Remove variable.
(kentry_pagealloc): New function.
(vm_map_setup): Likewise.
(vm_map_create): Replace initialization with a call to vm_map_setup().
* vm/vm_map.h (vm_map_setup): New prototype.
* vm/vm_kern.c (kernel_map_store): New variable.
(kernel_map): Point to kernel_map_store.
(kmem_suballoc): Remove function. Replaced with...
(kmem_submap): New function.
(kmem_init): Call vm_map_setup() instead of vm_map_create().
* vm/vm_kern.h (kmem_suballoc): Remove prototype.
(kmem_submap): New prototype.
* vm/vm_object.c (kernel_object_store): New variable.
(kernel_object): Point to kernel_object_store.
(vm_object_template): Change type from vm_object_t to struct vm_object.
(_vm_object_setup): New function.
(_vm_object_allocate): Replace initialization with a call to
_vm_object_setup().
(vm_object_bootstrap): Don't allocate vm_object_template, and use it as
a structure instead of a pointer. Initialize kernel_object and
vm_submap_object with _vm_object_setup() instead of
_vm_object_allocate().
* vm/vm_resident.c (vm_page_bootstrap): Don't initialize
kentry_data_size.
* device/ds_routines.c (device_io_map_store): New variable.
(device_io_map): Point to device_io_map_store.
(mach_device_init): Call kmem_submap() instead of kmem_suballoc().
* ipc/ipc_init.c (ipc_kernel_map_store): New variable.
(ipc_kernel_map): Point to ipc_kernel_map_store.
commit db2078e4f1802434f791f4f1c333725c42fe172b
Author: Richard Braun <address@hidden>
Date: Sat Dec 17 15:24:05 2011 +0000
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.
commit 7bc54a622e0c57a1085cd2990a1deedc8bd4743d
Author: Richard Braun <address@hidden>
Date: Tue Dec 13 20:27:56 2011 +0000
Import the slab allocator
As it is intended to completely replace the zone allocator, remove it on
the way. So long to the venerable code !
* Makefrag.am (libkernel_a_SOURCES): Add kern/slab.{c,h}, remove
kern/kalloc.c
and kern/zalloc.{c,h}.
* configfrag.ac (SLAB_VERIFY, SLAB_USE_CPU_POOLS): Add defines.
* i386/Makefrag.am (libkernel_a_SOURCES): Remove i386/i386/zalloc.h.
* i386/configfrag.ac (CPU_L1_SHIFT): Remove define.
* include/mach_debug/slab_info.h: New file.
* kern/slab.c: Likewise.
* kern/slab.h: Likewise.
* i386/i386/zalloc.h: Remove file.
* include/mach_debug/zone_info.h: Likewise.
* kern/kalloc.c: Likewise.
* kern/zalloc.c: Likewise.
* kern/zalloc.h: Likewise.
commit d25bd66fe0bd4cddb18890390198c86b9e9b56b4
Author: Richard Braun <address@hidden>
Date: Sat Dec 17 22:06:47 2011 +0000
Import utility files
* Makefrag.am (libkernel_a_SOURCES): Add kern/list.h, kern/rbtree.c,
kern/rbtree.h and kern/rbtree_i.h.
* kern/list.h: New file.
* kern/rbtree.c: Likewise.
* kern/rbtree.h: Likewise.
* kern/rbtree_i.h: Likewise.
* kern/macro_help.h (MACRO_BEGIN): Use GNU C compound statement
enclosed in parentheses.
(MACRO_END): Likewise.
-----------------------------------------------------------------------
hooks/post-receive
--
GNU Mach
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [SCM] GNU Mach branch, master-slab, created. 88382234bb540544a3550d1ddfb84e0d17eec971,
Richard Braun <=