On Thu, Mar 04, 2021 at 03:23:33PM +0800, Julien Rouhaud wrote: > I was also considering adding new (add|mull)_*_size functions to avoid having > too messy code. I'm not terribly happy with xxx_shm_size(), as not all call > to > those functions would require an alignment. Maybe (add|mull)shmemalign_size? > > But before modifying dozens of calls, should we really fix those or only > increase a bit the "slop factor", or a mix of it? > > For instance, I can see that for instance BackendStatusShmemSize() never had > any padding consideration, while others do. > > Maybe only fixing contribs, some macro like PredXactListDataSize that already > do a MAXALIGN, SimpleLruShmemSize and hash_estimate_size() would be a short > patch and should significantly improve the estimation.
The lack of complaints in this area looks to me like a sign that we
may not really need to backpatch something, so I would not be against
a precise chirurgy, with a separate set of {add,mul}_size() routines
that are used where adapted, so as it is easy to track down which size
estimations expect an extra padding. I would be curious to hear more
thoughts from others here.
Saying that, calling a new routine something like add_shmem_align_size
makes it clear what's its purpose.
--
Michael
signature.asc
Description: PGP signature
