tcache_bin_flush_large() potentially performs multiple passes over allocations when deallocating them, and looking up their corresponding extents via iealloc() is a somewhat costly operation. Consider memoizing the extent lookup results for use in later passes.