On Tue, 15 Nov 2022 at 11:11, Andres Freund <and...@anarazel.de> wrote: > Couldn't we reduce the amount of over-allocation by a small amount by special > casing the already-aligned case? That's not going to be relevant for page size > aligne allocations, but for smaller alignment values it could matter.
I don't quite follow this. How can we know the allocation is already aligned without performing the allocation? To perform the allocation we must tell palloc what size to allocate. So, we've already wasted the space by the time we can tell if the allocation is aligned to what we need. Aside from that, there's already a special case for alignto <= MAXIMUM_ALIGNOF. But we know no palloc will ever return anything aligned less than that in all cases, which is why that can work. David