On Tue, Jul 15, 2025 at 12:06:00PM -0500, Sami Imseih wrote:
> On Tue, Jul 15, 2025 at 11:57 AM Nathan Bossart
> <nathandboss...@gmail.com> wrote:
>> I was imagining putting the array in one big DSA allocation instead of
>> carting around a pointer for each tranche name.  (Sorry, I realize I am
>> hand-waving over some of the details.)
> 
> I understood it like this. Here is a sketch:
> 
> ```
> dsa_pointer p;
> 
> dsa = dsa_create(....)
> 
> p = dsa_allocate(dsa, LWLockTranchesInitialSize());
> tranche_names = (char **) dsa_get_address(dsa, p);
> tranche_names[0] = "my tranche";
> tranche_names[1] = "my tranche";
> ```
> 
> We will need to track the size and resize if needed.
> 
> Is this what you mean, from a high level?

Yes, that's roughly what I had in mind.  We might need to employ some
tricks to avoid a limit on tranche name length, but maybe that's not worth
the energy.

-- 
nathan


Reply via email to