From cc7eecbfc09fb9f1c9e1aa33e8490f1ade0530b3 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Fri, 13 Oct 2006 20:53:14 +0000 Subject: [BZ #3313] * malloc/malloc.c (malloc_consolidate): Don't use get_fast_max to determine highest fast bin to consolidate, always look into all of them. (do_check_malloc_state): Only require for empty bins for large sizes in main arena. --- malloc/malloc.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'malloc/malloc.c') diff --git a/malloc/malloc.c b/malloc/malloc.c index e4b693c342..38ceb1e909 100644 --- a/malloc/malloc.c +++ b/malloc/malloc.c @@ -4692,7 +4692,15 @@ static void malloc_consolidate(av) mstate av; reused anyway. */ +#if 0 + /* It is wrong to limit the fast bins to search using get_max_fast + because, except for the main arena, all the others might have + blocks in the high fast bins. It's not worth it anyway, just + search all bins all the time. */ maxfb = &(av->fastbins[fastbin_index(get_max_fast ())]); +#else + maxfb = &(av->fastbins[NFASTBINS]); +#endif fb = &(av->fastbins[0]); do { if ( (p = *fb) != 0) { -- cgit 1.4.1