Age | Commit message (Collapse) | Author |
|
|
|
2005-06-22 Neal H. Walfield <neal@gnu.org>
* slab.h: Clean up comments.
(SLAB_CLASS): New macro.
physmem/
2005-06-22 Neal H. Walfield <neal@gnu.org>
* priv.h (frame_entry_init): Declare.
(frame_init): Declare.
* physmem.c (main): Call frame_entry_init and frame_init.
* frame-entry.c: Create a frame_entry slab class. Don't use
HURD_SLAB_SPACE_INITIALIZER to initialize frame_entry_space. Do
it ...
(frame_entry_init): ... here with hurd_frame_entry_slab_init.
(frame_entry_constructor): Update argument type given stronger
type checking.
(frame_entry_alloc): Call hurd_frame_entry_slab_alloc, not
hurd_slab_alloc.
(frame_entry_free): Call hurd_frame_entry_slab_dealloc, not
hurd_slab_dealloc.
* frame.c: Create a frame slab class. Don't use
HURD_SLAB_SPACE_INITIALIZER to initialize frame_space. Do it ...
(frame_init): ... here with hurd_frame_slab_init.
(frame_constructor): Update argument type given stronger type
checking.
(frame_alloc): Call hurd_frame_slab_alloc, not hurd_slab_alloc.
(frame_free): Call hurd_frame_slab_dealloc, not hurd_slab_dealloc.
|
|
2005-01-06 Neal H. Walfield <neal@gnu.org>
* slab.h (hurd_slab_allocate_buffer_t): New type.
(hurd_slab_deallocate_buffer_t): Likewise.
(struct hurd_slab_space): New fields allocate_buffer and
deallocate_buffer.
(HURD_SLAB_SPACE_INITIALIZER): Add new arguments ALLOC and DEALLOC
and take them into account when creating the slab.
(hurd_slab_create): New parameters ALLOCATE_BUFFER and
DEALLOCATE_BUFFER.
(hurd_slab_init): Likewise.
* slab.c (allocate_buffer): New function.
(deallocate_buffer): Likewise.
(reap): When deallocating a buffer, use allocate_buffer.
(grow): When allocating or deallocating a buffer, call
allocate_buffer or deallocate_buffer as appropriate.
(hurd_slab_init): Add new arguments ALLOCATE_BUFFER and
DEALLOCATE_BUFFER and take them into account when setting up
SPACE.
(hurd_slab_create): Likewise.
libhurd-cap/
2005-01-07 Neal H. Walfield <neal@gnu.org>
* cap.c (hurd_cap_init): Supply the allocate_buffer and
deallocate_buffer arguments to hurd_slab_create to conform with
the new semantics.
libhurd-cap-server/
2005-01-07 Neal H. Walfield <neal@gnu.org>
* class-init.c (hurd_cap_class_init_untyped): Supply the
allocate_buffer and deallocate_buffer arguments to
hurd_slab_create to conform with the new semantics.
* obj-entry-space.c (_hurd_cap_obj_entry_space): Likewise for
HURD_SLAB_SPACE_INITIALIZER.
* client-create.c (_hurd_cap_client_space): Likewise.
task/
2005-01-07 Neal H. Walfield <neal@gnu.org>
* thread.c (threads): Supply the allocate_buffer and
deallocate_buffer arguments to HURD_SLAB_SPACE_INITIALIZER to
conform with the new semantics.
|
|
* slab.c (hurd_slab_destroy): Remove unused variable PREVP.
|
|
* slab.c (hurd_slab_destroy): Fix typo.
(hurd_slab_free): Likewise.
|
|
* slab.h: Include <pthread.h>.
(hurd_slab_init): New prototype.
(struct hurd_slab_space): Rename member inited to initialized.
* slab.c (hurd_slab_init): New function.
(hurd_slab_create): Implement in terms of hurd_slab_init.
|
|
* slab.c (grow): Do not zero out memory returned by mmap with
MAP_ANONYMOUS. It already is zeroed.
|
|
* slab.c (space_list): Remove variable.
(list_lock): Likewise.
(hurd_slab_reap): Remove function.
(insert_space): Likewise.
(hurd_slab_create): Do not call insert_space. Delay
initialization of slab to first allocation.
(hurd_slab_destroy): Do not remove space from global list.
(init_space): New function.
(hurd_slab_dealloc): Assert that space is initialized.
(hurd_slab_free): New function.
(struct hurd_slab_space): Move from here ...
* slab.h (struct hurd_slab_space): ... to here.
(HURD_SLAB_SPACE_INITIALIZER): Defined.
(hurd_slab_reap): Remove prototype.
(hurd_slab_free): New prototype.
|
|
* slab.c (grow): Release memory if constructor fails to initialize
object. Return error value from constructor.
(reap): Make function static. Do not take space lock.
(hurd_slab_reap): Take space lock.
(hurd_slab_destroy): Implement.
|
|
* Makefile.am (AM_CPPFLAGS): Add -I$(top_srcdir)/libc-parts for
now.
|
|
* slab.h (hurd_slab_destroy): New prototype.
* slab.c (hurd_slab_destroy): Dummy implementation.
|
|
|
|
* slab.h (hurd_slab_constructor_t): Add new HOOK argument.
(hurd_slab_destructor_t): Likewise.
(hurd_slab_create): Likewise.
* slab.c (struct hurd_slab_space): New member HOOK. Move member
LOCK to beginning of struct.
(grow): Call constructor with hook value.
(reap): Call destructor with hook value.
(hurd_slab_create): Add argument HOOK, initialize (*SPACE)->hook.
|
|
|
|
|
|
* slab.c (init_allocator): Function removed.
(hurd_slab_create): Use malloc to allocate memory for slab space.
Insert space into space_list by calling insert_space.
(hurd_slab_reap): New function.
(reap): Likewise.
(insert_space): Likewise.
(remove_slab): Likewise.
(space_list): Declared.
(list_lock): Likewise.
(__hurd_slab_init): Removed.
(__hurd_slab_space): Likewise.
(struct hurd_slab_space): Add space_next.
* slab.h (hurd_slab_reap): Add prototype.
|
|
2003-09-17 Johan Rydberg <jrydberg@night.trouble.net>
* slab.h: Add alignment argument.
* slab.c: Rewrittten.
|
|
|
|
|
|
|
|
AC_CONFIG_LINKS directly.
|
|
|
|
|
|
|
|
|