Fix the bug that causes not allocating free run with lowest address.

This commit is contained in:
Qinfan Wu 2014-08-06 16:10:08 -07:00
parent 087ef3bc71
commit 55c9aa1038

View File

@ -107,8 +107,12 @@ arena_avail_comp(arena_chunk_map_t *a, arena_chunk_map_t *b)
a_size = arena_mapelm_to_bits(a) & ~PAGE_MASK;
ret = (a_size > b_size) - (a_size < b_size);
if (ret == 0 && (!(a_mapelm & CHUNK_MAP_KEY)))
if (ret == 0) {
if (!(a_mapelm & CHUNK_MAP_KEY))
ret = (a_mapelm > b_mapelm) - (a_mapelm < b_mapelm);
else
ret = -1;
}
return (ret);
}