Re: make LWLockCounter a global variable - Mailing list pgsql-hackers

From Nathan Bossart
Subject Re: make LWLockCounter a global variable
Date
Msg-id aLG8jlpEZAseM-wk@nathan
Whole thread Raw
In response to Re: make LWLockCounter a global variable  (Bertrand Drouvot <bertranddrouvot.pg@gmail.com>)
Responses Re: make LWLockCounter a global variable
List pgsql-hackers
On Fri, Aug 29, 2025 at 06:52:48AM +0000, Bertrand Drouvot wrote:
> On Thu, Aug 28, 2025 at 05:56:07PM -0400, Tom Lane wrote:
>> No objection here.  As a small improvement, perhaps you could swap
>> around the code in LWLockShmemSize so that the order in which it
>> considers size contributions matches the physical layout, more
>> or less like
>> 
>> [...]
>> 
>> I find it a little confusing that that code doesn't line up
>> exactly with what CreateLWLocks does.
> 
> +1.

Good idea.  Here's a new version of the patch.  If CI is happy with it,
I'll go ahead and commit it.

> Another option could be to not change CreateLWLocks() at all, except removing the
> local variable:
> 
> @@ -423,7 +424,6 @@ CreateLWLocks(void)
>         if (!IsUnderPostmaster)
>         {
>                 Size            spaceLocks = LWLockShmemSize();
> -               int                *LWLockCounter;
> 
> to use the global variable. That way we preserve the current memory layout and
> there is no need to change LWLockShmemSize().

That would make the patch smaller, but IMHO it kind-of defeats the purpose,
which is to make this stuff simpler and easier to follow.

-- 
nathan

Attachment

pgsql-hackers by date:

Previous
From: "cca5507"
Date:
Subject: Unused parameter in ProcessSlotSyncInterrupts()
Next
From: Tom Lane
Date:
Subject: Re: headerscheck warnings with late-model gcc