Thanks for this report. There’s indeed a bit of a chicken-and-egg issue here with the allocation size changing due to alignment after we’ve decided that the pool can fit the requested size. However, I’m curious where that weird alignment value is coming from. That seems like a bug which triggers this edge case that we normally shouldn’t see. Are you able to set a breakpoint there when the alignment is 176 and see how we got to that value? I can’t see the callstack you mention, I only see the “verify(TryAllocateInternal(…” line in your post.