diff --git a/servers/slapd/sl_malloc.c b/servers/slapd/sl_malloc.c index 11f05fb78cf59cb3330bcca8e7800f5dbd370015..6c9b8a21d6f489b287089fbbcd683f9633505006 100644 --- a/servers/slapd/sl_malloc.c +++ b/servers/slapd/sl_malloc.c @@ -62,6 +62,25 @@ enum { No_sl_malloc = 1 }; enum { No_sl_malloc = 0 }; #endif +#define SLAP_SLAB_SOBLOCK 64 + +struct slab_object { + void *so_ptr; + int so_blockhead; + LDAP_LIST_ENTRY(slab_object) so_link; +}; + +struct slab_heap { + void *sh_base; + void *sh_last; + void *sh_end; + int sh_stack; + int sh_maxorder; + unsigned char **sh_map; + LDAP_LIST_HEAD(sh_freelist, slab_object) *sh_free; + LDAP_LIST_HEAD(sh_so, slab_object) sh_sopool; +}; + enum { Align = sizeof(ber_len_t) > 2*sizeof(int) ? sizeof(ber_len_t) : 2*sizeof(int), diff --git a/servers/slapd/slap.h b/servers/slapd/slap.h index 4b16ae14d97b6e9b1dba2aaac46bd07560e9c2fb..49a89018743551cd7dc3116ace4ca1490b438d36 100644 --- a/servers/slapd/slap.h +++ b/servers/slapd/slap.h @@ -3038,7 +3038,6 @@ typedef int (*SLAP_ENTRY_INFO_FN) LDAP_P(( void *arg, Entry *e )); #define SLAP_SLAB_SIZE (1024*1024) #define SLAP_SLAB_STACK 1 -#define SLAP_SLAB_SOBLOCK 64 #define SLAP_ZONE_ALLOC 1 #undef SLAP_ZONE_ALLOC @@ -3268,25 +3267,6 @@ struct ComponentSyntaxInfo { #endif /* LDAP_COMP_MATCH */ -/* slab heap data structures */ - -struct slab_object { - void *so_ptr; - int so_blockhead; - LDAP_LIST_ENTRY(slab_object) so_link; -}; - -struct slab_heap { - void *sh_base; - void *sh_last; - void *sh_end; - int sh_stack; - int sh_maxorder; - unsigned char **sh_map; - LDAP_LIST_HEAD( sh_freelist, slab_object ) *sh_free; - LDAP_LIST_HEAD( sh_so, slab_object ) sh_sopool; -}; - #ifdef SLAP_ZONE_ALLOC #define SLAP_ZONE_SIZE 0x80000 /* 512KB */ #define SLAP_ZONE_SHIFT 19