Index: serverboot/ChangeLog 2005-08-13 Alfred M. Szmidt * kalloc.c: #include (init_hook, malloc_hook, free_hook): New functions. (__malloc_initialize_hook): New variable. (malloc, free): Functions removed. --- serverboot/kalloc.c 04 Apr 1997 01:27:41 +0200 1.1 +++ serverboot/kalloc.c 13 Aug 2005 20:07:09 +0200 @@ -34,6 +34,14 @@ #include #include /* for spin locks */ +#include /* for malloc_hook/free_hook */ + +static void init_hook (void); +static void *malloc_hook (size_t size, const void *caller); +static void free_hook (void *ptr, const void *caller); + +void (*__malloc_initialize_hook) (void) = init_hook; + #define DEBUG @@ -250,12 +258,21 @@ kfree( void *data, } } -void *malloc(vm_size_t size) +static void +init_hook (void) { - return (void *)kalloc(size); + __malloc_hook = malloc_hook; + __free_hook = free_hook; } -void free(void *addr) +static void * +malloc_hook (size_t size, const void *caller) +{ + return (void *) kalloc ((vm_size_t) size); +} + +static void +free_hook (void *ptr, const void *caller) { /* Just ignore harmless attempts at cleanliness. */ /* panic("free not implemented"); */