mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-09-22 06:11:32 +02:00
This is the pool equivalent of commit 97ea9c49f ("BUG/MEDIUM: fd: always align fdtab[] to 64 bytes"). After a careful code review, it happens that the pool heads are the other structures allocated with malloc/calloc that claim to be aligned to a size larger than what the allocator can offer. While no issue was reported on them, no memset() is performed and no type is large, this is a problem waiting to happen, so better fix it. In addition, it's relatively easy to do by storing the allocation address inside the pool_head itself and use it at free() time. Finally, threads might benefit from the fact that the caches will really be aligned and that there will be no false sharing. This should be backported to all versions where it applies easily.