When a program calls madvise(M_MXFAST, 0), it will crash the next time it tries to do some memory allocation or get into an infinite loop when it remadvises M_MXFAST to some other value. The problem probably stems from the handling of the first two "unindexable" bins (although I'm not sure right now how are they unindexable) - madvise(M_MXFAST, 0) will set the max_fast to SMALLBIN_WIDTH but fastbin_index(SMALLBIN_WIDTH) == -1, which ain't any good when you use that as an index to the buckets array.
I couldn't reproduce the problem but there were two things clearly wrong. Both were not introduced by the renumbering of the fast bins, they existed before. But the renumbering exposed the problems. The CVS code should be fix. Try it and report back.