From this bug it appears there's a known history of problems with the experimental malloc being used in the new glibc.
https://bugzilla.redhat.com/show_bug.cgi?id=494631
It appears that slapd is hitting some issues in this code still, even though the other symptoms in that bug report are marked as fixed. LD_PRELOADing a 3rd party malloc library shows no issues and likewise valgrind finds no invalid memory accesses in our code. I was seeing crashes on x86_64; the 32 bit code may actually be fixed by now.
Just an fyi. I've already spent more than 2 weeks looking for a memory overwrite in slapd only to find that the malloc library is broken. I can't afford to spend any more time tracking this down.