https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77538
--- Comment #22 from peien luo <coollpe at hotmail dot com> --- The bt only shows a stack size of 27. No recursion. I modified the tsan code to print out what's in the shadow stack when it's about to overflow. It looks most of the addresses are: __gnu_cxx::__normal_iterator<armor::Disk**, std::vector<Disk*, std::allocator<Disk*> > > std::__unguarded_partition_pivot<__gnu_cxx::__normal_iterator<Disk**, std::vector<Disk*, std::allocator<Disk*> > >, __gnu_cxx::__ops::_Iter_comp_iter<DiskCompare> >(__gnu_cxx::__normal_iterator<Disk**, std::vector<Disk*, std::allocator<Disk*> > >, __gnu_cxx::__normal_iterator<Disk**, std::vector<Disk*, std::allocator<Disk*> > >, __gnu_cxx::__ops::_Iter_comp_iter<DiskCompare>)